Systems and methods for generating data objects based on streaming data

ABSTRACT

Systems and methods are provided for using a non-regulated device to generate data objects via a regulated device. A first device can provide interface content items corresponding to one or more events for which to generate a data object, and receive, via a user selection, object information identifying an event of the one or more events, one or more object parameters, and a second device identifier identifying a second device of the user. The first device can generate a request to provide the object information to one or more servers, and transmit the request to provide the object information to one or more servers. The request causes the one or more servers to store an entry including the object information, generate a link to the object information, and transmit a message including the link to the second device of the user using the second device identifier.

BACKGROUND

This application claims the benefit of and priority to U.S. ProvisionalPatent Application No. 63/153,181, filed on Feb. 24, 2021, and U.S.Provisional Patent Application No. 63/153,185, filed on Feb. 24, 2021,the contents of each of which are hereby incorporated by reference intheir entirety for all purposes.

BACKGROUND

Broadcast devices, such as cable boxes or set-top boxes, are used todisplay broadcast content received from a broadcast source. Due to theone-to-many nature of broadcast content, it is challenging to monitorand display information relating to a specific broadcast device withbroadcast content.

BRIEF SUMMARY OF THE DISCLOSURE

Systems and methods of the present solution are directed to using anon-regulated device to generate data objects via a regulated device. Anon-regulated device can be a device that is not registered, notauthorized, or otherwise not compliant for generating particular dataobjects. A regulated device can be a device that is registered,authorized or otherwise compliant for generating such data objects. Byway of the present disclosure, a non-regulated device can communicatewith one or more regulated devices to allow users to select and dataobjects to generate via the regulated devices based in part on contentprovided at the non-regulated device. The non-regulated device can belocated or positioned in a public area or public venue (e.g., sportsstadium setting) to provide access to the content to a plurality ofdifferent users.

The systems and methods described herein can reduce the resource needsof the server and/or user device by using resources of a network node togenerate and/or provide portions of the content presented at a firstuser device (e.g., a non-regulated device). For example, rather thanmaintaining a large number of data objects or large data set of objectinformation at the server or one or more user devices, which requires asignificant use of resources, the data can be maintained at differentdevices including node, server and/or user devices, thus improving theefficiency of the allocation of computer resources. The data objects (orrecommendations for data objects) can be generated dynamically ascontent is being provided or streamed to a user device to reduce thestorage of data and increase the efficiency of the allocation ofcomputer resources. In embodiments, computer resources can be managed byprioritizing which data object recommendations and associated objectinformation is provided to a user device based in part on a streaming orviewing history of the user and dynamically changing data associatedwith one or more events.

At least one aspect of the present disclosure is directed to a method.The method may be performed, for example, by a first device having oneor more processors. The method includes providing an interface having aplurality of content items corresponding to one or more events for whichto generate a data object. The method includes receiving, from a uservia the interface, responsive to selection of one or more content itemsof the plurality of content items, object information identifying anevent of the one or more events, one or more object parameters, and asecond device identifier identifying a second device of the user. Themethod includes generating, responsive to receiving the objectinformation via the interface, a request to provide the objectinformation to one or more servers. The method includes transmitting, tothe one or more servers, the request to provide the object information.

The request can include data that when received by the one or moreservers, causes the one or more servers to i) store, in one or more datastructures, an entry including the object information, ii) generate alink to the object information in the one or more data structures, andiii) transmit a message to the second device of the user using thesecond device identifier. The message can include the link. When thelink is accessed via the second device, the link causes the seconddevice to launch an application executable on the second device that isconfigured to establish a communication session with the one or moreservers and access the object information stored in the one or more datastructures via the communication session and present an actionableobject configured to cause the second device to transmit instructions tothe one or more servers to generate the data object using the objectinformation.

In some implementations, the first device is a broadcast receiver deviceconfigured to present live content corresponding to the one or moreevents. In some implementations, the method includes modifying,responsive to an interaction with the link at the second device, atleast one object parameter associated with the event using a time of theinteraction and a time of the one or more data structures. In someimplementations, the method includes providing, to the application, themodified object parameters for selection by the user of the seconddevice.

In some implementations, the method includes generating the message toinclude one or more data packets. The one or more data packets caninclude the link and a device identifier for the second device of theuser in a payload portion of the one or more data packets. In someimplementations, the method includes performing, with the second device,a handshake responsive to an interaction with the link at the seconddevice to transmit the one or more data structures to the second devicefrom the interface of the first device.

In some implementations, the method includes assigning a time value tothe one or more events associated with each of the plurality of contentitems, the time value indicating an expiration date for the event. Insome implementations, the one or more object parameters of the eventinclude at least one of an object type or an object amount. In someimplementations, the method includes providing a prompt to authenticatethe user prior to providing the interface. In some implementations, themethod includes transmitting, to the one or more servers, informationreceived from the user responsive to the prompt to authenticate theuser. In some implementations, the method includes receiving, from theone or more servers, an authentication signal indicating the user isauthenticated.

At least one other aspect of the present disclosure is directed to amethod. The method can include receiving, from a first device of a user,object information identifying an event of one or more events, one ormore object parameters, and a second device identifier identifying asecond device of the user. The object information can be generated viaan interface of the first device. The method includes storing the objectinformation in one or more data structures. The method includesgenerating a link to the object information stored in the one or moredata structures. The method includes transmitting a message to thesecond device of the user using the second device identifier, themessage including the link. The method includes receiving, from thesecond device responsive to establishing a communication session betweenthe second device and the one or more servers, a request to access theobject information responsive to an interaction with the link on thesecond device. The method includes providing, to the second device usingthe second device identifier, the object information stored in the oneor more data structures. The object information can be presented on thesecond device with an actionable object configured to cause the seconddevice to transmit instructions to the one or more servers to generate adata object using the object information. The method includes receiving,responsive to an interaction with the actionable object, via thecommunication session, a request to generate the data object using theobject information. The method includes generating the data objectresponsive to the request.

In some implementations, wherein the one or more servers receive theobject information from the first device, and wherein the user is notsigned into a user account at the first device. In some implementations,prior to receiving the request to generate the data object, the user issigned into the user account on the second device. In someimplementations, the first device is a broadcast receiver deviceconfigured to present live content corresponding to the one or moreevents. In some implementations, the method includes modifying at leastone object parameter associated with the event based on an interactionperformed at the second device. In some implementations, the methodincludes identifying a respective time value associated with the one ormore events, the time value indicating an expiration date for the event.In some implementations, the one or more object parameters of the eventincludes at least one of an object type or an object amount.

At least one other aspect of the present disclosure is directed to asystem. The system can include a first device comprising one or moreprocessors coupled to a non-transitory memory. The system can provide aninterface having a plurality of content items corresponding to one ormore events for which to generate a data object. The system can receive,from a user via the interface, responsive to selection of one or morecontent items of the plurality of content items, object informationidentifying an event of the one or more events, one or more objectparameters, and a second device identifier identifying a second deviceof the user. The system can generate, responsive to receiving the objectinformation via the interface, a request to provide the objectinformation to one or more servers. The system can transmit, to the oneor more servers, the request to provide the object information. Therequest including data that when received by the one or more servers,causes the one or more servers to i) store, in one or more datastructures, an entry including the object information, ii) generate alink to the object information in the one or more data structures, andiii) transmit a message to the second device of the user using thesecond device identifier. The message can include the link. When thelink is accessed via the second device, the link causes the seconddevice to launch an application executable on the second device that isconfigured to establish a communication session with the one or moreservers and access the object information stored in the one or more datastructures via the communication session and present an actionableobject configured to cause the second device to transmit instructions tothe one or more servers to generate the data object using the objectinformation.

In some implementations, the first device is a broadcast receiver deviceconfigured to present live content corresponding to the one or moreevents. In some implementations, the system can modify, responsive to aninteraction with the link at the second device, at least one objectparameter associated with the event using a time of the interaction anda time of the one or more data structures. In some implementations, thesystem can provide, to the application, the modified object parametersfor selection by the user of the second device. In some implementations,the system can generate the message to include one or more data packets,the one or more data packets including the link and a device identifierfor the second device of the user in a payload portion of the one ormore data packets.

In some implementations, the system can perform, with the second device,a handshake responsive to an interaction with the link at the seconddevice to transmit the one or more data structures to the second devicefrom the interface of the first device. In some implementations, thesystem can assign a time value to the one or more events associated witheach of the plurality of content items, the time value indicating anexpiration date for the event. In some implementations, the one or moreobject parameters of the event includes at least one of an object typeor an object amount.

In some implementations, the system can provide a prompt to authenticatethe user prior to providing the interface. In some implementations, thesystem can transmit, to the one or more servers, information receivedfrom the user responsive to the prompt to authenticate the user. In someimplementations, the system can receive, from the one or more servers,an authentication signal indicating the user is authenticated.

At least one other aspect of the present disclosure is directed toanother system. The system can include one or more processors coupled toa non-transitory memory. The system can receive, from a first device ofa user, object information identifying an event of one or more events,one or more object parameters, and a second device identifieridentifying a second device of the user, the object informationgenerated via an interface of the first device. The system can store theobject information in one or more data structures. The system cangenerate a link to the object information stored in the one or more datastructures. The system can transmit a message to the second device ofthe user using the second device identifier, the message including thelink. The system can receive, from the second device responsive toestablishing a communication session between the second device and theone or more processors, a request to access the object informationresponsive to an interaction with the link on the second device. Thesystem can provide, to the second device using the second deviceidentifier, the object information stored in the one or more datastructures, the object information presented on the second device withan actionable object configured to cause the second device to transmitinstructions to the one or more processors to generate a data objectusing the object information. The system can receive, responsive to aninteraction with the actionable object, via the communication session, arequest to generate the data object using the object information. Thesystem can generate, the data object responsive to the request.

In some implementations, the system can receive the object informationfrom the first device, wherein the user is not signed into a useraccount at the first device. In some implementations, prior to receivingthe request to generate the data object, the user is signed into theuser account on the second device. In some implementations, the firstdevice is a broadcast receiver device configured to present live contentcorresponding to the one or more events. In some implementations, thesystem can modify at least one object parameter associated with theevent based on an interaction performed at the second device.

In some implementations, the system can identify a respective time valueassociated with the one or more events, the time value indicating anexpiration date for the event. In some implementations, the one or moreobject parameters of the event includes at least one of an object typeor an object amount.

At least one other aspect of the present disclosure is directed to amethod. The method can be performed, for example, by a serving havingone or more processors. The method can include determining that a firstdevice of a user is presenting content corresponding to a live eventsatisfying a condition. The method can include identifying, responsiveto determining that the first device is presenting the contentcorresponding to the live event, object information corresponding to theevent, one or more object parameters corresponding to the live event, atime value of the live event. The method can include providing, to thefirst device, one or more content items for display concurrent with thelive event by the first device, each content item of the one or morecontent items including a link corresponding to a respective objectrecommendation, that when accessed via the first device, causes theserver to transmit a message to a second device of the user using asecond device identifier and present an actionable object configured tocause the second device to transmit instructions to generate a dataobject corresponding to the content item. The method can includereceiving, by the server from the second device, the instructionsgenerate the data object. The method can include generating, by theserver, the data object based on the one or more object parameters ofthe respective event.

In some implementations, the method can include identifying a pluralityof events accessed by the user during a determined time period. In someimplementations, the method can include generating one or morerecommendations for the event responsive based on the one or more objectparameters for each event of the plurality of events. In someimplementations, the method can include providing, to the first device,a subsequent data structure responsive to the first device presenting asecond broadcast of a subsequent event of the plurality of events, thesubsequent data structure including the one or more recommendations forthe subsequent event of the plurality of events.

In some implementations, the method can include accessing, from one ormore servers, a schedule for broadcast content corresponding to theplurality of events over a predetermined time period. In someimplementations, the method can include determining position informationindicative of a location to display the one or more content items withinthe display of the first device such that the one or more content itemsand the event are visible to the user through the display of the firstdevice. In some implementations, the method can include providing, tothe first device, the position information with the one or more contentitems, wherein the first device displays the one or more content itemsconcurrent with the event through the first device based on the locationindicated by the position information.

In some implementations, the method can include modifying, responsive toa change in the event, position information for the one or more contentitems, the position information indicative of a location to display theone or more content items within the display of the first device suchthat the one or more content items and the event are visible to the userthrough the display of the first device. In some implementations, themethod can include providing, to the first device, the positioninformation that causes the first device to modify the display of theone or more content items from a first position within the display ofthe first device to a second position within the display of the firstdevice.

In some implementations, the method can include modifying, responsive toan interaction by the user with the first device, position informationfor the one or more content items, the position information indicativeof a location to display the one or more content items within thedisplay of the first device such that the one or more content items andthe event are visible to the user through the display of the firstdevice. In some implementations, the method can include providing, tothe first device, the position information that causes the first deviceto modify the display of the one or more content items from a firstposition within the display of the first device to a second positionwithin the display of the first device.

In some implementations, the method can include accessing, from one ormore servers, a user profile associated with the user, the user profileincluding account information for the user. In some implementations, themethod can include generating the one or more content items to includethe account information for the user, wherein the first device displaysthe one or more content items including the account informationconcurrent with the event through the first device. In someimplementations, the method can include identifying, from the userprofile associated with the user, a viewing history for the user for atime period, the viewing history indicative of one or more eventspreviously presented to the user. In some implementations, the methodcan include generating the one or more content items to include one ormore recommendations for the plurality of events available to the user.

In some implementations, the method can include ranking the one or morerecommendations based on a duration indicated by the time value for theevent. In some implementations, the method can include assigning, basedon the ranking, a location for each of the one or more recommendationsfor display at the first device.

At least one other aspect of the present disclosure is directed to asystem. The system can include a server comprising one or moreprocessors coupled to memory. The system can determine that a firstdevice of a user is presenting content corresponding to a live eventsatisfying a condition. The system can identify, responsive todetermining that the first device is presenting the contentcorresponding to the live event, object information corresponding to theevent, one or more object parameters corresponding to the live event, atime value of the live event. The system can provide, to the firstdevice, one or more content items for display concurrent with the liveevent by the first device, each content item of the one or more contentitems including a link corresponding to a respective objectrecommendation, that when accessed via the first device, causes theserver to transmit a message to a second device of the user using asecond device identifier and present an actionable object configured tocause the second device to transmit instructions to generate a dataobject corresponding to the content item. The system can receive, fromthe second device, the instructions generate the data object. The systemcan generate the data object based on the one or more object parametersof the respective event.

In some implementations, the system can identify a plurality of eventsaccessed by the user during a determined time period. In someimplementations, the system can generate one or more recommendations forthe event responsive based on the one or more object parameters for eachevent of the plurality of events. In some implementations, the systemcan provide, to the first device, a subsequent data structure responsiveto the first device presenting a second broadcast of a subsequent eventof the plurality of events, the subsequent data structure including theone or more recommendations for the subsequent event of the plurality ofevents.

In some implementations, the system can access, from one or moreservers, a schedule for broadcast content corresponding to the pluralityof events over a predetermined time period. In some implementations, thesystem can determine position information indicative of a location todisplay the one or more content items within the display of the firstdevice such that the one or more content items and the event are visibleto the user through the display of the first device. In someimplementations, the system can provide, to the first device, theposition information with the one or more content items, wherein thefirst device displays the one or more content items concurrent with theevent through the first device based on the location indicated by theposition information.

In some implementations, the system can modify, responsive to a changein the event, position information for the one or more content items,the position information indicative of a location to display the one ormore content items within the display of the first device such that theone or more content items and the event are visible to the user throughthe display of the first device. In some implementations, the system canprovide, to the first device, the position information that causes thefirst device to modify the display of the one or more content items froma first position within the display of the first device to a secondposition within the display of the first device.

In some implementations, the system can modify, responsive to aninteraction by the user with the first device, position information forthe one or more content items, the position information indicative of alocation to display the one or more content items within the display ofthe first device such that the one or more content items and the eventare visible to the user through the display of the first device. In someimplementations, the system can provide, to the first device, theposition information that causes the first device to modify the displayof the one or more content items from a first position within thedisplay of the first device to a second position within the display ofthe first device.

In some implementations, the system can access, from one or moreservers, a user profile associated with the user, the user profileincluding account information for the user. In some implementations, thesystem can generate the one or more content items to include the accountinformation for the user, wherein the first device displays the one ormore content items including the account information concurrent with theevent through the first device.

In some implementations, the system can identify, from the user profileassociated with the user, a viewing history for the user for a timeperiod, the viewing history indicative of one or more events previouslypresented to the user. In some implementations, the system can generatethe one or more content items to include one or more recommendations forthe plurality of events available to the user. In some implementations,the system can rank the one or more recommendations based on a durationindicated by the time value for the event. In some implementations, thesystem can assign, based on the ranking, a location for each of the oneor more recommendations for display at the first device.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other objects, aspects, features, and advantages ofthe disclosure will become more apparent and better understood byreferring to the following description taken in conjunction with theaccompanying drawings, in which:

FIG. 1A is a block diagram depicting an embodiment of a networkenvironment comprising a non-regulated device in communication withregulated devices via a network;

FIG. 1B is a table depicting an embodiment of a wager history;

FIG. 2 is a block diagram depicting an embodiment of a networkenvironment comprising a server in communication with one or more clientdevices;

FIG. 3 is a flow diagram depicting one or more embodiments of a methodfor using a non-regulated device to generate wagers for placement via aregulated device;

FIG. 4A is a block diagram depicting an embodiment of a networkenvironment for providing wager recommendations based on streaming data;

FIG. 4B is a table depicting an embodiment of a wager history;

FIG. 5 is a block diagram depicting network node in communication with aclient application on a user device;

FIG. 6 is a diagram depicting a display of a user device showing a datastructure and an event concurrently displayed;

FIGS. 7A and 7B are flow diagrams depicting one or more embodiments of amethod for providing wager recommendations based on streaming data;

FIG. 8A is a block diagram of embodiments of a computing device;

FIG. 8B is a block diagram depicting a computing environment comprisingclient device in communication with cloud service providers; and

FIG. 9 is an example flow diagram of a method for providing contentitems based on a live event, in accordance with one or moreimplementations.

DETAILED DESCRIPTION

For purposes of reading the description of the various embodimentsbelow, the following descriptions of the sections of the specificationand their respective contents may be helpful:

Section A describes embodiments of systems and methods for using anon-regulated device to generate data objects via a regulated device.

Section B describes embodiments of systems and methods for providingcontent items based on streaming data.

Section C describes a network environment and computing environmentwhich may be useful for practicing embodiments described herein.

A. Systems and Methods for Using a Non-Regulated Device to Generate DataObjects Via a Regulated Device

The systems and methods described herein can reduce the resource needsof the server and/or user device by providing a portion of the contentat a non-regulated device that is shared by a plurality of differentusers and may not be specifically owned or maintained by one specificuser. For example, rather than maintaining a large number of contentitems or large data set of wager information at the server or one ormore user devices which requires a significant use of resources, thedata can be maintained at different devices including non-regulateddevices and regulated devices, thus improving the efficiency of theallocation of computer resources. Computer resources can be managed byprioritizing which content items and associated wager information isprovided to a user device based in part on selections made at anon-regulated device and dynamically changing data associated with oneor more events.

Systems and methods of the present solution are directed to using anon-regulated device to generate data objects via a regulated device.Content can be presented to one or more users through a user interfaceof a non-regulated device, for example, in a public setting or venue.The non-regulated device can include, but is not limited to, a publicdevice, public kiosk, public terminal or a device accessible to aplurality of different users. In some implementations, the non-regulateddevice can include a television or other personal media device, such asa set-top box connected to a display, or another type of display device.Any of the techniques described in this section can be implemented, orperformed, by any of the computing devices described herein inconnection with Section B. In some embodiments, the non-regulated devicecan include a device that none of the users interacting with the deviceare signed into or have provided credentials or personal information.The content can include event information and object informationassociated with one or more events (e.g., sports contests, sportsmatch-ups). The non-regulated device can provide an interactionenvironment for a plurality of different users to be exposed to contentand make selections or request information to later place a wager.

The non-regulated device can communicate with one or more regulateddevices including a content server to receive the content that isdisplayed in the public setting and provide selections of content itemsfrom the non-regulated device. The non-regulated device can receive aselection through the user interface that includes or indicates objectinformation associated with at least one event. The wager informationcan identify the event, one or more wager parameters, and a deviceidentifier for at least one device associated with the user making theselection. The non-regulated device can generate a request to providethe wager information to the content server and transmit the requestincluding the wager information to the content server.

The content server can store the wager information, for example, in adata structure and link or associate the data structure with a userprofile for the user making selection. The content server can use thereceived wager information to generate a link for one or more devicesassociate with the user that made the original selection. For example,the link can include script, code or instructions such that when thelink is accessed via a device, causes the respective device to launch anapplication (e.g., user application) that is configured to establish asession to the content server and receive the wager information. Inembodiments, the content server can populate the application to includethe wager information or provide the wager information responsive to aninteraction with the link such that the application displays the wagerinformation to the user on the user device. The application can presentor display a wager initiation action object that includes the wagerinformation or one or more wager opportunities associated with the wagerinformation. The actionable object can be configured to cause the userdevice to transmit instructions to the content server to place a wagerusing the wager information and/or one or more wager opportunities. Inembodiments, the user can place or initiate a wager, based in part onthe wager information selected at the non-regulated device, using anapplication executing on the users device.

Referring now to FIG. 1A, depicted is an environment 100 having a server102, a non-regulated device 140 (e.g., kiosk), and one or more userdevices 160. The non-regulated device 140 can provide or display contentitem 144, for example, in a public setting or public venue to aplurality of different users and the content item 144 can include events116 and wager information (sometimes referred to herein as “objectinformation”) associated with the events 116. The users can interactwith the non-regulated device 140 to make selections or requestinformation to place a wager (wherein placing a wager is sometimesreferred to herein as “generating a data object”) via a regulated device(e.g., user device 160) concurrently with making the selection or atlater time after making the selection. The non-regulated device 140 canprovide a public terminal or public venue for users to socialize andinteract with each other while content and object information isprovided to each of the users.

The environment 100 can include a cloud computing environment. The cloudcomputing environment 100 may be public, private, or hybrid. Publicclouds may include public servers that are maintained by third partiesto one or more user devices 160 or the owners of one or more userdevices 160. The servers may be located off-site in remote geographicallocations as disclosed above or otherwise. Public clouds may beconnected to the servers over a public network. Private clouds mayinclude private servers that are physically maintained by one or moreuser devices 160 or owners of one or more user devices 160. Privateclouds may be connected to the servers over a private network. Hybridclouds may include both the private and public networks and servers. Inembodiments, the environment 100 can be the same as or substantiallysimilar to network 870 or cloud 875 of FIG. 8B.

The server 102 can include a regulated device or a content serverconfigured to generate one or more content items 144 to provide to thenon-regulated device 140. The server 102 can be implemented usinghardware or a combination of software and hardware. For example, eachcomponent of the server 102 can include logical circuity (e.g., acentral processing unit or CPU) that responses to and processesinstructions fetched from a memory unit (e.g., memory, storage device106). Each component of the server 102 can include or use amicroprocessor or a multi-core processor. A multi-core processor caninclude two or more processing units (e.g., processor 104) on a singlecomputing component. Each component of the server 102 can be based onany of these processors, or any other processor capable of operating asdescribed herein. Each processor can utilize instruction levelparallelism, thread level parallelism, different levels of cache, etc.For example, the server 102 can include at least one logic device suchas a computing device having at least one processor 104 to communicate,for example, with one or more non-regulated devices 140 and/or one ormore user devices 160. The components and elements of the server 102 canbe separate components or a single component. The server 102 can includea memory component (e.g., storage device 106) to store and retrievecontent item 144, event information 116, and/or wager information 150.The memory 106 can include a random access memory (RAM) or other dynamicstorage device, for storing information, and instructions to be executedby the server 102. The memory 106 can include at least one read onlymemory (ROM) or other static storage device for storing staticinformation and instructions for the server 102. The memory 106 caninclude a solid state device, magnetic disk or optical disk, topersistently store information and instructions. In some embodiments,the server 102 can include or deployed as, and/or be executed on anytype and form of computing device, such as any desktop computer, laptopcomputer, or mobile device capable of communication over at least onenetwork and performing the operations described herein. In embodiments,the server 102 can be the same as or substantially similar to computer800 of FIG. 8A or server 895 of FIG. 8B. The server 102 can be used toimplement, or perform, any of the functionalities of the server 402described herein in connection with Section B of the present disclosure.

The server 102 can maintain one or more user profiles 120, for example,for a plurality of different users. In embodiments, each user profile120 can be linked with or associated with at least one user. In someembodiments, a user profile 120 can be generated for a user responsiveto a registration process, log-in attempt and/or responsive to a firstinteraction with the server 102 and/or non-regulated device 140 by therespective user. The user profile 120 can include a data structure orentry in a database of the memory 106 of the server 102 for storing andmaintaining wager information 150, wager parameters 152 (sometimesreferred to herein as “object parameters 152”), event information 116and/or event parameters 118 for the user. The user profiles 120 caninclude historical data or previous wagers, selections or interactionsmade by the user. In embodiments, the user profile 120 can include awager history 123 for the user. The user profiles 120 can include userpreferences including, but not limited to, hometown, location, favoritesports teams, favorite sports, favorite athletes, and/or favorite typesof wagers.

The server 102 can maintain one or more group profiles 122. The groupprofile 122 can include a group of users or group of user profiles 120having similar user preferences, historical data, previous wagers,selections and/or interactions with the server 102 and/or anon-regulated device 140. The group profile 122 can include a group ofusers or group of user profiles 120 participating in or active in thesame contest or placing wagers on the same content item 144 and/orevents 116 (e.g., active event, current event). The group profile 122can include or link together a plurality of user profiles 120 for aplurality of different users, for example, to recommend or identifycontent item 144 for the members of the group profile 122 based in parton the data associated with the other members of the group profile 122.In embodiments, the group profile 122 can include a wager history 123for the group of users.

The server 102 can generate one or more data structures 110 that includeone or more entries 112 for storing wager information 150 received froma non-regulated device 140. An entry 112 can include a request 114,event information 116, or a device identifier 162. The request 114 caninclude a data structure, an instruction, code, script or command. Therequest 114 can include information associated with at least oneselection by a user. In embodiments, the request 114 can include oridentify one or more content items 144, wager information 150, an event116, a device identifier 162, and/or a user profile 120.

The event 116 can include a contest, sporting event, or any type ofevent that a user can place a wager on or bet on. For example, the event116 can include a contest that one or more users can register for toparticipate in (e.g., registrants). The event 116 can include or referto, but is not limited to, a football game, basketball game, a soccermatch, golf tournament, baseball game, an e-sports event (e.g. a videogame or computer game contest), or any type of sporting contest. Theevent 116 can include sporting events that are scheduled within adetermined time period (e.g., planned but not started yet) and/or activesporting events that are underway (e.g., have started or begun) but havenot completed yet. The event 116 can include one or more parameters. Theevent parameters 118 can include, but are not limited to, a type ofwager 154, a wager amount, a team name, a contest name and/or anoutcome. The event parameters 118 can include, but are not limited to, atime when a selection was made, a time when a wager 154 was placed, atype of sport, a type of contest, odds 124 associated with the event116, and/or odds 124 associated with the wager 154.

The device identifier 162 can include a script, code, label, or markerthat identifies a particular device. In embodiments, the deviceidentifier 162 can include a string or plurality of numbers, letters,characters or any combination numbers, letters, and characters. In someembodiments, each device can have a unique device identifier 162. Thewager parameters 152 can include, but are not limited to, a type ofwager 154 (wagers are sometimes referred to herein as “data object(s)”),a wager amount, a time associated with the wager 154 (e.g., when wagerwas placed), one or more teams included in the wager 154, a contestname, an outcome, a time when a selection was made, a time when a wager154 was placed, a type of sport, a type of contest, odds 124 (where theodds are sometimes referred to herein as “object parameter(s)”)associated with the event 116, and/or odds 124 associated with the wager154.

The server 102 can generate a message 130 to provide a user device 160wager information 150 associated with at least one selection made a userof the user device 160. The message 130 can include a data structure,data packet 132, script, code, instruction or command. In embodiments,the message 130 can include a link 134 generated by the server 102.

The link 134 can include a hyperlink, uniform resource locator (URL) orreference to data, for example, at another document, device 160,non-regulated device 140 or server 102. In embodiments, the link 134 canbe configured to cause a device 160 to establish or request acommunication session 170 between the respective device 160 and a server102 and/or a non-regulated device 140. In some embodiments, the link 134can be configured to cause a device 160 to launch an application 164(e.g., user application) that is configured to establish or request acommunication session 170 between the respective device 160 and a server102 and/or a non-regulated device 140. In embodiments, the link 134 canrefer to or point to a data structure 110 including the content item144, event 116, and wager information 150 associated with a selectionmade by the user of the user device 160, for example, at a non-regulateddevice 140.

Odds 124 can include or refer to a measure of the likelihood of aparticular outcome in a contest or event 116. In embodiments, the odds124 can be calculated or determined as a ratio of a number of events oroccurrences during an event 116 that produce a particular outcome versusthe number of events or occurrences during the event 116 that don'tproduce the particular outcome. The odds 124 can be based in part ongenerated based in part on a time value (e.g., time remaining) in aparticular event 116. The odds 124 can be dynamically modified, forexample, in response to a change in a time value of an event 116 and/orone or more occurrences during an event 116.

In some embodiments, the odds can be retrieved from or generated by aseparate server or entity. For instance, the server 102 can beconfigured to receive odds and other wager data for various wagers fromone or more wager servers. The wager servers can be servers at which thewagers are placed and the server 102 can be configured to transmitinstructions to the one or more wager servers to place the wagers onbehalf of a user. It should further be appreciated that variouscomponents of the server 102 shown in FIG. 1A can be stored ormaintained by other servers and that the server 102 can be configured tocommunicate with one or more other servers including the wager servers.

The time 126 can include a time stamp, a time range, a time period or aparticular point in time. In embodiments, the time 126 can indicate atime of an interaction (e.g., with a link, with a content item), a timeremaining in an event 116, a time associated with a content item 144.The time value 128 can include a time stamp, a time range, a time periodor a particular point in time. In embodiments, the time value 128 caninclude or represent an expiration date for an event 116. For example,the server 102 can assign a time value 128 to an event 116 based in parton a start time, duration and/or end time for the event 116. The timevalue 128 can indicate when the event 116 expires and/or when anopportunity to place a wager 154 on the event 116 expires.

In some embodiments, the server 102 can generate the content items 144based in part on data received from one or more data sources. The datasources can include a game server that provides real-time updates tolive sporting events, one or more servers of sportsbooks or otherservers that generate odds or lines for live sporting events, amongothers. For example, the server 102 can be in communication with one ormore third party servers that periodically provide data that the server102 can use to generate one or more content items 144 and/or update oneor more data structures 110 with information or data to be included incontent items 144 that are then presented to non-regulated devices 140and/or user devices 160 associated with users. The data provided to theserver 102 can include a plurality of possible future outcomes for oneor more sporting events 116, including but not limited to futureoutcomes pertaining to individual players, teams, or multiple teams. Inaddition, the data can include a current value that is based on alikelihood that a particular future outcome will occur based on acurrent status of one or more sporting events 116. In some suchembodiments, the server 102 can establish and maintain a communicationchannel with the one or more third-party servers and utilize arecommendation policy that enables the server 102 to access the datamaintained by the one or more third-party servers, including the datathe server 102 can use to generate the one or more content items 144. Insome embodiments, the server 102 can be configured to perform one ormore functions of the third-party servers, including but not limited todynamically generating content items 144 or updating content items 144based on a likelihood that particular future outcomes will occur basedon a current status of one or more sporting events 116.

The server 102 can include a prediction engine 108. The predictionengine 108 can generate predictions and probabilities (e.g., odds 124)on future outcomes for one or more events 116. The prediction engine 108can use data for an event 116 including, but not limited to, the teamsinvolved, players involved, time of the event 116, and/or time remainingin the event 116. In embodiments, the prediction engine 108 can generateodds 124 for one or more outcomes (e.g., final score, points scored byeach team, winning team) of an event 116. The prediction engine 108 cangenerate data that indicates that an outcome or feature of the realsports event 116 being above, equal to, or below a threshold. Theprediction engine 108 can generate data that indicates odds 124 aparticular outcome may be achieved if one or more players or one or moreteams scores a predetermined number of points, or achieves apre-determined number of instances of an objective (e.g. touchdowns), orif at least a predetermined total number of points is scored in a game(an “over/under” for a game point total), or if another objective isachieved (e.g. a shutout), or some combination of the above. Theprediction engine 108 can assign weights to one or more outcomes that isindicative of a strength or likelihood of the outcome occurring. Theweights may be determined in any appropriate manner, including by amachine-learning algorithm trained on a training data set. The term“machine-learning algorithm” can be used herein to refer to an algorithmdetermined by a process including machine learning (e.g. amachine-trained algorithm).

In embodiments, the prediction engine 108 can determine a real-timeevent status for one or more events 116. The real-time event status canrelate to any real-time condition, status, or action of a real event116. For example, the real-time event status can indicate whether a gameis close (e.g. whether a score difference between two teams is equal toor smaller than a threshold), or whether a prediction on a futureoutcome of the event 116 or content item 144 is close to being satisfied(e.g. whether a total number of points in a game is close to a totalnumber of points corresponding to an over-under prediction on a futureoutcome (e.g. within a threshold of the over-under)). Such thresholdscan be determined based on a time 126 (e.g. a time since the start ofthe event or game, or a time remaining in the event or game). Forexample, a first threshold may be implemented for a remaining time 126that falls within a first predetermined range (e.g. a second-to-lastquarter of total game time), and a second threshold may be implementedfor a remaining time 126 that falls within a second predetermined range(e.g. e.g. a last quarter of total game time). The second threshold maybe smaller than the first threshold. Thus, the server 102 ornon-regulated device 140 can account for time remaining in an event 116when determining whether the prediction on a future outcome associatedwith a content item 144 is close to being satisfied. The real-timestatus can indicate or can be that a game is close or not (e.g. a binaryindication), or can indicate or can be a degree of closeness (e.g. basedon a difference between the scores of two teams or a difference betweena point total and an under/under line). In embodiments, any otherreal-time condition, status, or action of a real event 116 or game canrelate to a real-time event status of a content item 144. For example,the real-time event status of the content item 144 can relate to whetherone or more points were just scored in a game, or if a team is in a“red-zone” or has been awarded a penalty shot, or if a remaining gametime is equal to or below a threshold (or if a time since the start ofthe game is equal to or above a threshold). A content item 144 may haveone or more real-time statuses.

The non-regulated device 140 can include a public device, a terminal, akiosk, an interactive terminal that provides access to information andapplications to a plurality of different users. The non-regulated device140 can be deployed or positioned in a public setting, such as but notlimited to, a sports contest, a shopping center, or an urban market toprovide access to information such as one or more content items 144associated with one or more events 116 for users to place a wager 154.In some embodiments, the non-regulated device 140 can include a devicethat is not associated with or owned by one particular user. Forexample, in some embodiments, a user can interact with the non-regulateddevice 140 without providing personal information, logging into thenon-regulated device 140, and/or signing into an account at thenon-regulated device 140. In some implementations, the non-regulateddevice 140 can be a television or another non-regulated device thatprovides streaming content. The non-regulated device 140 can implement,or perform, any of the functionalities of the user device 460 detailedherein below in connection with Section B of the present disclosure.

The non-regulated device 140 can provide or display one or more contentitems 144. The content items 144 can be displayed through a userinterface 142 of the non-regulated device 140. The user interface 142can include a graphical user interface (GUI) (e.g., a touchscreen, adisplay, etc.) and one or more input/output (I/O) devices (e.g., amouse, a keyboard, digital key pad). The user interface 142 can includea display or portion of a display of the non-regulated device 140. Theuser interface 142 can include a tough screen displaying the contentitems 144 in a menu or listing and in the form of selectable contentitems 144. The user interface 142 can include an input device thatcouples or communicates with a display of the non-regulated device 140to enable a user to interact with the content items 144 provided throughthe display and make selections and/or provide feedback to thenon-regulated device 140. The user interface 142 can enable interactionwith one or more visual indications provided through the display of thenon-regulated device 140 and responsive to an interaction (e.g., select,click-on, touch, hover), the user interface 142 can generate anindication identifying a user input and/or selection of at least onecontent item 144.

The content items 144 can include a data structure, code, script orinstruction identifying one or more events 116 and wager information 150for each event 116 of the one or more events 116. The content items 144can include a reference to (e.g. can include a reference included in atext, an image, a video, a hyperlink, an interactive object forinitializing an application, or another media item) one or more events116. In some embodiments, the content items 144 can include arecommendation including one or more events 116 and an actionable object136 for each recommendation and/or each event 116 of the one or moreevents 116. In embodiments, the actionable object 136 can be linked towager information 150 for the corresponding event 116.

The wager information 150 (sometimes referred to herein as “objectinformation”) can include, but is not limited to, odds 124 (sometimesreferred to herein as “object parameters”) for one or more outcomes forthe event 116, one or more outcomes for the event 116, a type of wager,a wager amount, a type of contest (e.g., type of sports contest), a time126 for the event 116, one or more teams involved with the event 116,and/or one or more players (e.g., participants, athletes) participatingin the event 116. The non-regulated device 140 can generate one or morerequests 114 to transmit or provide wager information 150 to one or moreservers 102. The request 114 can include a data structure, aninstruction, code, script or command. The request 114 can includeinformation associated with at least one selection by a user at thenon-regulated device 140.

The non-regulated device 140 can be implemented using hardware or acombination of software and hardware. For example, each component of thenon-regulated device 140 can include logical circuity (e.g., a centralprocessing unit or CPU) that responses to and processes instructionsfetched from a memory unit (e.g., memory, storage device 106). Eachcomponent of the non-regulated device 140 can include or use amicroprocessor or a multi-core processor. A multi-core processor caninclude two or more processing units (e.g., processor 104) on a singlecomputing component. Each component of the non-regulated device 140 canbe based on any of these processors, or any other processor capable ofoperating as described herein. Each processor can utilize instructionlevel parallelism, thread level parallelism, different levels of cache,etc. For example, the non-regulated device 140 can include at least onelogic device such as a computing device having at least one processor104 to communicate, for example, with one or more servers 102 and/or oneor more user devices 160. The components and elements of thenon-regulated device 140 can be separate components or a singlecomponent. The non-regulated device 140 can include a memory component(e.g., storage device 106) to store and retrieve content item 144, eventinformation 116, and/or wager information 150. The memory 106 caninclude a random access memory (RAM) or other dynamic storage device,for storing information, and instructions to be executed by thenon-regulated device 140. The memory 106 can include at least one readonly memory (ROM) or other static storage device for storing staticinformation and instructions for non-regulated device 140. The memory106 can include a solid state device, magnetic disk or optical disk, topersistently store information and instructions.

The user device 160 can include a client device or a device associatedwith at least one user profile 120. The user device 160 can include, butis not limited to a computing device or a mobile device. The user device160 can include or correspond to an instance of any client device,mobile device or computer device described herein. In embodiments, theuser device 160 can be the same as or substantially similar to computer800 of FIG. 8A. In some implementations, the user device 160 canimplement, or perform, any of the functionality of the user device 460detailed herein in connection with Section B of the present disclosure.

The user device 160 can be implemented using hardware or a combinationof software and hardware. For example, each component of the user device160 can include logical circuity (e.g., a central processing unit orCPU) that responses to and processes instructions fetched from a memoryunit (e.g., memory, storage device 106). Each component of the userdevice 160 can include or use a microprocessor or a multi-coreprocessor. A multi-core processor can include two or more processingunits (e.g., processor 104) on a single computing component. Eachcomponent of the user device 160 can be based on any of theseprocessors, or any other processor capable of operating as describedherein. Each processor can utilize instruction level parallelism, threadlevel parallelism, different levels of cache, etc. For example, the userdevice 160 can include at least one logic device such as a computingdevice having at least one processor 104 to communicate, for example,with one or more servers 102 and/or one or more user devices 160. Thecomponents and elements of the user device 160 can be separatecomponents or a single component. The user device 160 can include amemory component (e.g., storage device 106) to store and retrievecontent item 144, event information 116, and/or wager information 150.The memory 106 can include a random access memory (RAM) or other dynamicstorage device, for storing information, and instructions to be executedby the user device 160. The memory 106 can include at least one readonly memory (ROM) or other static storage device for storing staticinformation and instructions for the user device 160. The memory 106 caninclude a solid state device, magnetic disk or optical disk, topersistently store information and instructions. In some embodiments,the user device 160 can include or deployed as, and/or be executed onany type and form of computing device, such as any desktop computer,laptop computer, or mobile device capable of communication over at leastone network and performing the operations described herein.

The application 164 can include a user application executing on the userdevice 160 or provided to the user device 160 by the server 102. Theapplication 164 can include a web application, a server application,resource, desktop and/or file. In embodiments, the application 164 caninclude local applications (e.g., local to a user device 160), hostedapplication, Software as a Service (SaaS) application, virtualapplication, mobile application, and other forms of content. In someembodiments, the application 164 can include or correspond toapplications provided by remote servers or third party servers. Inembodiments, the application 164 can access, through the link 134, thewager information 150 stored and maintained at the server 102 andgenerate a wager initiation actionable object 136 to a user through theuser device 160. The wager initiation actionable object 136 can includea user-selectable hyperlink that initiates a process to generate a wager154 using the wager information 150 and transmit the wager 154 from theuser device 160, through the application 164, to the server 102. Inembodiments, the wager initiation actionable object 136 can include auser-selectable hyperlink that initiates a process to transmitinstructions to the server 102 to place a wager 154 using the wagerinformation 150. In some embodiments, the wager initiation actionableobject 136 can include a user-selectable hyperlink that initiates aprocess to download a webpage, additional wager information 150, odds124 (e.g., updated odds, current odds), and/or registration informationto register a user of the user device 160 in a contest.

In embodiments, one or more communication sessions 170 can beestablished between the user device 160, the server 102, thenon-regulated device 140 and any combination of the user device 160, theserver 102, or the non-regulated device 140. The session 170 can includea channel or connection between the user device 160 and the server 102,the user device and the non-regulated device 140, and/or the server 102and the non-regulated device 140. The session 170 can include anapplication session (e.g., virtual application), an execution session, adesktop session, a hosted desktop session, a terminal services session,a browser session, a remote desktop session, a URL session and/or aremote application session. The session 170 can include encrypted and/orsecure sessions. The encrypted session 170 can include an encryptedfile, encrypted data or traffic.

Referring now to FIG. 1B, a table showing a representation of a wagerhistory 123 for a user is provided. The table can be used to identifyrelationships between particular wagers, wagers types, and/or wageramounts made by a user. The wager history 123 can correspond to a wagerhistory for a single user or multiple users. For example, the wagerhistory 123 can be stored and maintained in a user profile 120 for auser or a group profile 122 for a group of users.

The table 123 includes a first column identifying the particular wager(e.g., wager A, wager B, etc.). The table 123 includes a second columnidentifying whether the wager was for a parlay bet or a single bet. Thetable 123 includes a third column identify a wager type (e.g., wagertype 1, wager type 2, etc.) for a wager. In embodiments, the wager typecan include, but not limited to, winning team, total points, moneylinebets, spread bets, or over/under bets. The table 123 can include afourth column identifying whether the wager was a pre-game wager (e.g.,before contest begins) or a live in-game wager (e.g., real-time wagers,play-byplay wagers). The table 123 includes a fifth column identifyingwager amounts for the corresponding wager. The table 123 includes asixth column identifying a time 126 that a wager was placed or entered.

The server 102 can generate content items 144 for a group of users basedin part on a wager history 123 maintained for a group profile 122. Theserver 102 can use properties from the wager history 123 to determinebetting patterns for a user or a group of users based in part on thewager history 123. In embodiments, the server 102 can determine thatteam A is included in multiple wagers placed by the user or group ofusers. The server 102 can identify the number of times the user or groupof users has placed a particular type of wager and/or properties of thewagers placed by the user or group of users. For example, the server 102can determine that a user places a first type of wager with the highestfrequency and typically bets on the moneyline as a pregame wager. Inembodiments, the server 102 can generate one or more content items 144(e.g., bet recommendations) for the user or similar users for one ormore events 116 scheduled to occur in a determined time periodindicating a first type of wager based in part on the wager history 123.

In embodiments, the server 102 can determine that the non-regulateddevice 140 is located at an event 116 (e.g., stadium for a footballgame) and that a group of users 202 corresponding to fans of at leastone team participating in the event 116 frequently place moneyline typewagers. The server 102 can generate a second or additional content items144 indicating a moneyline bet as a pre-game wager. The server 102 cangenerate a third content item 144 or additional content items indicatinga parlay wager using the moneyline as a pre-game wager. The number ofcontent items 144 can vary and can be selected based at least in part onthe properties of one or more events 116 and one or more wager histories123.

Referring now to FIG. 2, depicted is a public venue 200 having anon-regulated device 140 positioned in a general area to display aplurality of content items 144 for a plurality of different users 202.The non-regulated device 140 can include a kiosk, terminal or publicdisplay that is accessible to each of the different users 202 and/orvisible to the different users 202 to enable the users 202 to interactwith and/or make one or more selections of the content items 144provided through an interface 142 of the non-regulated device 140. Insome embodiments, the non-regulated device 140 can include a television,display device, monitor, handheld computing device (e.g., iPad) or anytype of device in which an application 164 can execute. The contentitems 144 can correspond to or represent one or more events 116,including but not limited to, sporting events that are scheduled tobegin within a determined time period (e.g., in a few hours) or that arecurrently underway but not completed. The non-regulated device 140 caninclude a public device that allows users 202 to make selections ofcontent items 144 without logging into the non-regulated device 140,registering with the non-regulated device 140 or providing user accountinformation. The interface 142 of the non-regulated device 140 caninclude a touchscreen, interactive display or a display having one ormore input devices to enable interaction with content items 144displayed through the interface 142.

In some embodiments, the non-regulated device 140 can present offers orcontent items 144 associated with the public venue 200 the non-regulateddevice 140 is located at. For example, in one embodiment at a footballstadium, the non-regulated device 140 can generate and display contentitems 144 associated with a football game about to begin and one or morepotential outcomes in the football game. In embodiments, a first contentitem 144 can indicate a predicted winning team, a second content item144 can indicate a predicted winning score, a third content items 144can indicate a total score for the football game, and a fourth contentitem 144 can indicate a predicted half-time score in the football game.The number of content items 144 provided and the number of potentialoutcomes can vary, based at least in part on the type of event 116 andproperties of the event 116.

In some embodiments, the server 102 can generate content items 144 forlive or real-time betting. For example, the content items 144 caninclude or correspond to play-by-play betting. The server 102 cangenerate one or more content items 144 for display through anon-regulated device 140 for a particular play or series of plays (e.g.,possession) within a current or live game. The server 102 can generatecontent items 144 once a sports contest begins (e.g., is underway,initiates) and can continue providing content items 144 during thesports contest, for example, through the non-regulated device 140. Theserver 102 can generate content items 144 for a particular scoringopportunity (e.g., goal, home run, touchdown, etc.) within a current orlive game.

The server 102 can generate one or more content items 144 responsive todifferent occurrences that may occur during a sports event 116. Forexample, the server 102 can generate a first set of content items 144before or as a sports event 116 begins. In embodiments, the first set ofcontent items 144 can correspond to a first team to score a goal, afirst player to hit a home run, or a first player to score a touchdown.After a first scoring occurrence or event (e.g., goal, home run,touchdown, etc.) occurs within the sports event 116, the server 102 cangenerate a second set of content items 144. The second set of contentitems 144 can be different from the first set of content items 144. Insome embodiments, one or more content items 144 from the first set ofcontent items 144 can be the same as one or more content items 144 fromthe second set of content items 144. After a second scoring occurrenceor event (e.g., field goal, strike out, three point shot) occurs withinthe sports event 116, the server 102 can generate a third set of contentitems 144. The third set of content items 144 can be different from thefirst set of content items 144 and/or the second set of content items144. In some embodiments, one or more content items 144 from the thirdset of content items 144 can be the same as one or more content items144 from the first set of content items 144 and/or the second set ofcontent items 144. The server 102 can continually and dynamicallygenerate one or more content items 144 during a live sports contest orsports contest that is underway to provide live betting orplay-by-playing.

The server 102 can continually and dynamically generate one or morecontent items 144 that are personalized for a user associated with auser profile 120 by using user attributes and/or other data stored inand/or associated with the user profile 120. The server 102 can rank andassign weights to each of the content items 144 provided to a user orpreviously selected by the user using a match score. In embodiments, thematch score can indicate a likelihood that a user associated with theuser profile 120 is likely to act upon, select, or engage with thecontent item 144 or a group of users (e.g., fans at a sports event, fansof the same team) associated with a group profile 122 are likely to actupon, select, or engage with the content item 144. The server 102 canidentify and select a predetermined number of content items 144 (e.g.,top three, top five, top ten) having the highest or greatest match scoreas compared to the other content items 144. The server 102 can provide,for example, through a non-regulated device 140, the predeterminednumber of content items 144 having the highest or greatest match scoreto provide a personalized set of real-time content items 144 to therespective user or group of users.

In embodiments, the server 102 or non-regulated device 140 can determinea position or location of one or more content items 144 within a displayof the interface 142 of the non-regulated device 140 based in part onthe match score. For example, content items 144 having a greater matchscore can be positioned having a greater prominence as compared to othercontent items 144 having a lower prominence. The server 102 ornon-regulated device 140 can determine a position of a first contentitem 144 having a first match score. The first match score cancorrespond to the highest or greatest match score as compared to matchscores of other content items 144. The server 102 or non-regulateddevice 140 can select or assign a first position within the interface142 having a greatest prominence. For example, the prominent positionwith the interface 142 can include, but not limited to, a top portionand/or a start of a list of the candidate recommendations. Theprominence of a content item 144 can be modified using features of thedisplay, such as a stylistic feature (e.g. a particular text style(which can specify a size, a font, underlining, bold, italics, oranother style, and in some embodiments the style is different than theanother style used for a different candidate recommendation), a visualindicator (e.g. a box, circle, or other visual indicator that surroundsor is otherwise positioned relative to the content item), or any otherappropriate feature.

The server 102 or non-regulated device 140 can position and/or displayother content items 144 having less prominence or in a less prominentposition within the display as compared to the content items 144 havinga higher or greater match score. Thus, the content items 144 having thehighest or greatest match score can be positioned and/or displayed witha greater prominence to increase a likelihood that one or more usersassociated with a group profile 122 are likely to act upon the contentitems 144 compared to the other content items 144 of the plurality ofcontent items 144.

In some embodiments, the content items 144 can be generated based on anongoing basis or based in part on an upcoming sporting event, forexample, the public venue 200 that the non-regulated device 140 islocated. The content item 144 can include or reference an outcome of theevent 116 and include a likelihood (e.g., odds 124) of the presentedoutcome. In embodiments, the content items 144 can be generated inreal-time based on a current score or game condition of one or moreevents 116. The content item 144 can include a media item (e.g. anycombination of text, image, video, or user-interactive content), and themedia item can reference a candidate content management selected by aserver 102 based on a location of the non-regulated device 140 and atime value 128 (e.g., current time, time value for one or more events).In some embodiments, the content item can include an actionable object136 that a user 202 can interact with to facilitate generating orplacing a wager 154 or registering for a contest. For example, theactionable object 136 can include a user-selectable hyperlink thatinitiates a process to push a link 134 to a user device 160 that theuser device 160 to download a webpage, or initiate a process ofgenerating or placing a wager 154.

The users 202 can interact with the non-regulated device 140 to selectcontent items 144 that correspond to potential wagers 154 that are thentransferred to a user device 160 of the user, for example, through aserver 102 (e.g., content server 102). For example, a user 202 canselect a content item 144 provided through the interface 142 of thenon-regulated device 140 and the non-regulated device 140 can generate arequest 114 corresponding to the selection. The content item 144 cancorrespond to at least one event 116 and/or an outcome (e.g., winningteam, total score) for the event 116 can include wager information 150for the event 116 and/or outcome of the event 116. In embodiments, thenon-regulated device 140 can receive or determine the wager information150 responsive to the selection by the user 202 at the interface 142 andthe wager information 150 can include, but is not limited to, one ormore wager parameters 152 and a device identifier 162 of a user device160 associated with the user 202.

In some embodiments, the user 202 can enter the device identifier 162 ofthe user device 160 when making the selection. In some embodiments, theuser 202 can enter a phone number for the user device 160 (e.g., mobilephone) and the non-regulated device 140 and determine the deviceidentifier 162 using the phone number. In embodiments, the user 202 canprovide a user identifier associated with a user profile 120 for theuser 202 and the non-regulated device 140 can use the user identifier todetermine the device identifier 162 from the user profile 120. Thenon-regulated device 140 can generate and transmit the request 114 toprovide the wager information 150 to the server 102. In embodiments, therequest 114 can include the wager information 150, the event 116, thetype of event 116, the device identifier 162, and/or a user identifier.

The server 102 can receive the request 114 from the non-regulated device140 and create or update a data structure 110 or entry 112 for a datastructure 110 to store the data included with the request 114. Forexample, the server 102 can store the wager information 150, the eventinformation 116, the type of event 116, the device identifier 162,and/or a user identifier in at least one entry 112. The server 102 caninclude a content server having or hosting a plurality of contests ormanaging wagers 154 for a plurality of contests. In some embodiments,the server 102 can modify the wager information 150 to include one ormore additional wager opportunities that are associated with theselected content item 144 from the non-regulated device 140. Forexample, the server 102 can update the wager information 150 to includeone or more wager opportunities for the same event 116 that the userselected at the non-regulated device 140.

The server 102 can use the received wager information 150 to generate amessage 130 for the user device 160 of the user 202. The server 102generate the message 130 to include a link 134 to the wager information150 stored at the server 102. In embodiments, the link 134 can includeor correspond to a hyperlink that when interacted with or accessedcauses a communications session 170 to be established to the respectivedevice where the link 134 was accessed and the wager information 150 tobe transmitted to the respective device where the link 134 was accessed.In embodiments, the server 102 can use the device identifier 162 toidentify the user device 160 to transmit the message 130. In someembodiments, the server 102 can access a user profile 120 of the user202 to identify the user device 160 to transmit the message 130.

The server 102 can transmit the message 130 to the user device 160 ormultiple user devices 160 associated with the user 202. In embodiments,the user 202 can access or open the message 130 on the user device 160and the link 134 can be displayed to the user 202. In some embodiments,the user device 160 can receive the message 130 and a window or promptcan open on the user device 160 to display the link 134.

The user device 160 can receive or detect an interaction with the link134. For example, the user 202 can select, click-on, touch, and/or hoverover for a determined time period the link 134 to access the link 134.The link 134 can include instructions or code that causes the userdevice 160 to establish a communications session 170 with the server 102that transmitted the message 130. The link 134 can include instructionsor code that causes, responsive to establishing the communicationssession 170, the user device 160 to access, retrieve or be provided thewager information 150 from the data structure 110 of the server 102. Insome embodiments, the server 102 can receive an indication of aninteraction with the link 134 at the user device 160 and transmit,provide or push the wager information 150 associated with the link 134to the user device 160 through the communications session 170. Inembodiments, the user device 160 can download the wager information 150associated with the link 134 from the server 102 through thecommunications session 170. In some embodiments, the non-regulateddevice 140 and/or server 102 can perform a handshake with the userdevice 160 to transmit or provide the wager information to the userdevice 160.

The user device 160 can launch an application 164, for example,responsive to accessing the link 134. In some embodiments, the server102 can provide the application 164 responsive to the interaction withthe link 134. The application 164 can receive the wager information 150and generate or display one or more wager initiation actionable objects136 to the user 202 through the user device 160. The wager initiationactionable objects 136 can include or correspond to potential wagergenerated based in part on the wager information 150 and the selectedcontent item 144 of the non-regulated device 140. For example, the wagerinitiation actionable objects 136 can indicate a predicted outcome forthe event 116 associated with the selected content item 144 of thenon-regulated device 140. In some embodiments, the wager initiationactionable objects 136 can indicate a predicted outcome (e.g., wageropportunity) for the user 202 to select to initiate or place a wager 154at the server 102. The number of wager initiation actionable objects 136presented can vary and be based at least in part on the number ofcontent items 144 selected at the non-regulated device 140 and/or thewager information 150 received from the server 102. The wager initiationactionable objects 136 can indicate a type of wager, one or more wageramounts, odds 124, one or more teams' names, one or more outcomes,and/or a time value 128 for a corresponding wager 154. In someembodiments, the odds 124 included with the wager initiation actionableobjects 136 can change or be different from the odds 124 of the contentitem 144 selected by the user 202 at the non-regulated device 140. Forexample, the odds 124 can change based in part on a time remaining inthe event 116 and/or one or more occurrences (e.g., scoring event)during the event 116. The server 102 can verify or check the odds 124and if the odds 124 have changed, the server 102 can provide the wagerinformation 150 with the modified or changed odds 124 to the user device160. The wager initiation actionable object 136 can indicate themodified or updated odds 124.

The user device 160 and/or application 164 can receive an indication ofa selection of at least one the wager initiation actionable objects 136.The user device 160 can generate instructions 204 or commandsidentifying the selected wager initiation actionable objects 136, thetype of wager, the selected or entered wager amount, odds 124, one ormore teams' names, one or more outcomes, and/or the time 126 when theselection of the wager initiation actionable objects 136 was made. Theinstructions 204 can include instructions to place a wager 154 for theuser 202 at the server 102 for the selected type of wager, odds 124 forthe outcome, and/or the selected or entered wager amount. The userdevice 160 can transmit the wager instructions 204 to the server 12through the communications session 170 for the server 102 to place orenter a wager 154 for the user based on the wager instructions 204. Inembodiments, the server 102 can enter the wager 154 for the user usingthe wager instructions 204 for the selected type of wager, odds 124 forthe outcome, and/or the selected or entered wager amount.

Thus, the user 202 can be provided a wager opportunity at the userdevice 160 (e.g., personal device) based on an interaction with a publicnon-regulated device 140. The interface 142 for a non-regulated device140 can provide or include handoff technology to enable users 202 togenerate or select wager opportunities at the non-regulated device 140that are provided to personal devices 160 of the user 202 forconfirmation and officially entering or placing.

Referring now to FIG. 3, depicted is a flow diagram of one embodiment ofa method 300 for using a non-regulated device to generate wagers forplacement via a regulated device. In brief overview, the method 300 caninclude one or more of: generating content items (302), providing aninterface (304), receiving object information (306), generating arequest (308), transmitting a request (310), storing data (312),generating a link (314), identifying a device (316), transmitting amessage (318), accessing an application (320), populating an application(322), receiving an object initiation (324), transmitting the objectinitiation (326), and generating a data object (328). Thefunctionalities of the method 300 may be implemented using, or performedby, the components detailed herein in connection with FIGS. 1A, 2, 4A,5, 8A, and 8B.

Referring now to operation (302), and in some embodiments, one or morecontent items 144 can be generated. The content items 144 can begenerated for display through a non-regulated device 140, such as in apublic area or public venue. The content items 144 can includeinformation or data associated with one or more events 116 (e.g.,sporting contests, football games, golf tournaments). The content items144 can include or identify one or more events 116 and wager information150 for the one or more events 116. For example, the content items 144can include an event 116 and odds 124 associated with one or morepossible outcomes in the event 116 or during the course of the event 116and types of wagers available to a user for the respective event 116.The content items 144 can be generated by the server 102 and transmittedto one or more non-regulated devices 140. In embodiments, the contentitems 144 can be generated by the non-regulated device 140.

Referring now to operation (304), and in some embodiments, an interface142 can be provided. A first device 140 or non-regulated device 140 canprovide the interface 142 having a plurality of content items 144corresponding to one or more events 116 on which to place a wager 154.The non-regulated device 140 can generate or provide the user interface142 to a plurality of different users (e.g., crowd, public venue) andthe content items 144 can be displayed through the user interface 1042of the non-regulated device 140. The content items 144 can be displayedbased in a determined order, for example, based in part on a time 126for the respective event 116 (e.g., chronological order), a type ofsport, a type of wager, one or more teams involved, one or more playersinvolved, or any combination of time 126 for the respective event 116(e.g., chronological order), type of sport, type of wager, one or moreteams involved, and one or more players involved. The non-regulateddevice 140 can assign a time value 128 to the one or more events 116with each of the plurality of content items 144. The time value 128 canindicate an expiration date for the respective event 116. The time value128 can be determined based in part on a scheduled start time for theevent 116, duration value for the event 116 and/or end time for theevent 116.

Referring now to operation (306), and in some embodiments, wagerinformation 150 (e.g., object information) can be received. The firstdevice 140 or non-regulated device 140 can receive, from a user via theinterface 142 responsive to selection of one or more content items 144of the plurality of content items 144, wager information 150 identifyingan event 116 of the one or more events 116, one or more wager parameters152 and a second device identifier 162 identifying a second device 160(e.g., user device) of the user. The user interface 142 can present orprovide the content items 144 as selectable objects that, responsive toa user interaction with the respective content item 144, an instructionor command can be generated to identify the content item 144 selected bya user, the event 116 associated with the content item 144 and wagerinformation 150 selected by the user and/or associated with the event116. The non-regulated device 140 can receive a single selection from asingle user or multiple selections from multiple different users. Inembodiments, the non-regulated device 140 can receive wager information150 corresponding to selections made a plurality of different users. Thewager information 150 can include, but is not limited to, a time value128 indicating when the selection was made, a type of wager, a wageramount, a selected outcome, a type of event 116 (e.g., type of sportingevent), one or more teams involved in the event 116, one or more playersparticipating in the event 116, a device identifier 162 for one or moredevices 160 associated with the user and/or a user profile 120 of theuser.

Referring now to operation (308), and in some embodiments, a request 114can be generated. The first device 140 or non-regulated device 140 cangenerate, responsive to receiving the wager information 150 via theinterface 142, a request 114 to provide the wager information 150 to oneor more servers 102. The request 114 can include a data structureincluding the wager information 150. In embodiments, the non-regulateddevice 140 can generate a request 114 for each selection received viathe interface 142.

Referring now to operation (310), and in some embodiments, the request114 can be transmitted. The first device 140 or non-regulated device 140can transmit, to one or more servers 102, the request 114 to provide thewager information 150. The non-regulated device 140 can transmit therequest 114 to at least one server 102 through a communications session170 between the non-regulated device 140 and the server 102. Inembodiments, the non-regulated device 140 can transmit the request 114to the server 102 that the non-regulated device 140 received the contentitems 144, event information and/or wager information 150 fromoriginally. In some embodiments, the non-regulated device 140 can selecta server 12 from the one or more servers 102 and transmit the request114 to the server 102 through a communications session 170 between thenon-regulated device 140 and the server 102.

Referring now to operation (312), and in some embodiments, data can bestored. The server 102 can store the wager information 150 received withthe request 114 in an entry 112 of a data structure 110, for example, ina memory 106 of the server 102. For example, the request 114 can includedata that when received by the one or more servers 102, causes the oneor more servers to store, in one or more data structures 110, an entry112 including the wager information 150, generate a link 134 to thewager information 150 in the one or more data structures 110, andtransmit a message 130 to the second device 160 or at least one userdevice 160 of the user using the second device identifier 162. Inembodiments, the server 102 can generate or create a new entry 112and/or new data structure 110 for the wager information 150 receivedwith the request 114 responsive to receiving the request 114. In someembodiments, the server 102 can update or modify an existing new entry112 and/or data structure 110 to include the wager information 150received with the request 114 responsive to receiving the request 114.

Referring now to operation (314), and in some embodiments, a link 138can be generated. The server 102 can generate a link 138 that points toor identifies the data structure 110 and entry 112 where the wagerinformation 150 is stored and maintained. The link 138 can include ahyperlink or reference to the wager information 150. In someembodiments, the link 138 can include a code or script that causes auser device 160 to launch an application 164 at the respective userdevice 160 or to receive (e.g., download) an application 164 and launchthe application 164 at the respective user device 160. In embodiments,the server 102 can generate the link 138 responsive to receiving therequest 1114 and storing the wager information 150 in the entry 112 ofthe data structure 110.

Referring now to operation (316), and in some embodiments, a device 160can be identified. The server 102 can identify a user device 160associated with the user or associated with a user profile 120 for theuser. The server 102 can use the device identifier 162 included with therequest 114 to identify one or more user devices 160 associated with theuser. For example, the server 102 can use the device identifier 162 toidentify the user device 160 for the user. In some embodiments, theserver 102 can use the device identifier 162 to parse or search aplurality of user profiles 120 to identify the user and/or the userprofile 120 associated with the user. The server 102 can access theidentified user profile 120 to identify the correct or appropriatedevice 160, for example, to transmit a message 130 including the link138.

Referring now to operation (318), and in some embodiments, a message 130can be transmitted. The server 102 can transmit a message 130 to theuser device 160 of the user through a communication sessions 170 betweenthe server 102 and the user device 160. The server 102 can generate themessage 130 to include the link 134, the device identifier 162 for thereceiving user device 160 and/or an identifier for the user that madethe initial selection. The server 102 can generate the message 130 toinclude one or more data packets 132 and the data packets 132 caninclude the link 134 and a device identifier 162 for the secondarydevice 160 of the user in a payload portion of the one or more datapackets 132. In some embodiments, the message 130 can indicate oridentify the non-regulated device 140 the original selection was made, atime value 128 indicating when the selection was made and/or the contentitem 144 selected or interacted with at the non-regulated device 140.The user device 160 can receive the message 130 including the link 134associated with the data structure 110 generated at the server 102and/or generated at the nonregulated device 140. In embodiments, thedata structure 110 can include or identify the wager information 150,event information associated with at least one content item 144 selectedat the interface 142 of the nonregulated device 140 by a user 202 of theuser device 160.

Referring now to operation (320), and in some embodiments, anapplication 164 can be accessed. In embodiments, the message 130 caninclude the link 134, which when accessed via the second device 160(e.g., user device 160), causes the second device 160 to launch anapplication 164 executable on the second device 160 that is configuredto establish a communication session 170 with the one or more servers102 and access the wager information 150 stored in the one or more datastructures 110 via the communication session 170 and present a wagerinitiation actionable object 136 configured to cause the second device160 to transmit instructions 204 to the one or more servers 102 to placea wager 154 using the wager information 150. In embodiments, the server102 can perform a handshake with the secondary device 160 responsive tothe interaction with the link 134 at the secondary device 160 totransmit the data structure 110 to the secondary device 160 from theserver 102. In some embodiments, the non-regulated device 140 canperform a handshake with the secondary device 160 responsive to theinteraction with the link 134 at the secondary device 160 to transmitthe data structure 110 to the secondary device 160 from the interface142 of the non-regulated device 140. The user device 160 can receive themessage 130 and a prompt, menu or window can be presented to a user ofthe user device 160 through a display of the user device 160. The userdevice 160 can display or provide the link 134 through the display andresponsive to an interaction (e.g., select, click-on, touch, hover) withthe link 134, the user device 160 can launch and access the application164. The user device 160 can detect the interaction with the link 134.In some embodiments, responsive to an interaction with the link 134, theuser device 160 can receive, download or access the application 164 fromthe server 102.

Referring now to operation (322), and in some embodiments, theapplication 164 can be populated. In embodiments, the user device 160can launch the application 164 and populate one or more fields of theapplication to include the information in the data structure 110 anddisplay the wager information 150 to a user through the application 164.In some embodiments, the application 164 can be populated to include orpresent the wager information 150 responsive to establishing thecommunications session 170 with the server 102 and launching theapplication 164. For example, the application 164 can launch on the userdevice 160 and can include a script or code to receive or download thewager information 150 from the server 102 and populate (e.g.,auto-populate) one or more fields of the application 164 to display thewager information 150. The application 164 can present or display one ormore wager initiation actionable objects 136 to a user of the userdevice 160. The wager initiation actionable objects 136 can correspondto or represent opportunities for the user generated based on the wagerinformation 150 accessed from the server 102. The wager initiationactionable objects 136 can correspond to or be associated with one ormore outcomes of an event 116 and include odds 124 associated with therespective outcome occurring. In some embodiments, the wager initiationactionable objects 136 can include or correspond to wagers or bettingopportunities for an event 116. The wager initiation actionable objects136 can include selectable content, for example, that in response aninteraction with the respective wager initiation actionable object 136,causes the second device 160 to transmit instructions 204 to the server102 to place a wager 154 using the wager information 150 or a portion ofthe wager information 150 represented by the wager initiation actionableobject 136. In some embodiments, the non-regulated device 140 cantransmit, responsive to the interaction with the link 134 at thesecondary device 160, the data structure 110 from the interface 142 tothe secondary device 160.

In embodiments, the user device 160 can update or modify odds 124associated with an event 116 based in part on a time 126 of the event116 (e.g., time remaining in the event) or current time 126. The odds124 can be updated to reflect a current probability of an outcomeassociated with the odds 124 occurring based in part on the time 126 ofthe event 116 and one or more conditions (e.g., current score, playerstatistics, team statistics) of the event 116. For example, the userdevice 160 can modify, responsive to the interaction with the link 138at the secondary device 160 or user device 160, odds 124 associated withthe event 116 using a time 126 of the interaction and a time 126 of theat least one content item 144. The time of the content item 144 caninclude or correspond to a time remaining in the event 116 representedby the content item 144. In embodiments, the user device 160 candetermine if the odds 124 have changed, for example, from a time 126that the user selected the content item 144 at the non-regulated device140 to the time 126 of the interaction with the link 138 at the userdevice. If the odds 124 have not changed, the user device 160 canprovide the odds 124 for one or more outcomes associated with the event116 for selection by the user of the user device through one or morewager initiation actionable objects 136. If the odds 124 have changed,the user device 160 can update the odds 124 to reflect the current ormost recent odds 124 for one or more outcomes associated with the event116. The user device 160 can provide the modified odds 124 116 forselection by the user of the user device through one or more wagerinitiation actionable objects 136.

Referring now to operation (324), and in some embodiments, a wagerinitiation (sometimes referred to herein as an “object initiation”) canbe received. The user device 160 can receive an indication of aninteraction with at least one wager initiation actionable object 136 ormultiple wager initiation actionable objects 136. The user device 160can identify the wager information 150 linked with or associated withthe wager initiation actionable object 136 and generate instructions204. The instructions 204 can include a command, code or indication ofwager information 150 to be used to generate a wager 154 when receivedat the server 102. In some embodiments, the user device 160 can generatea wager 154 using the wager information 150 linked with or associatedwith the selected wager initiation actionable object 136.

Referring now to operation (326), and in some embodiments, instructions204 can be transmitted. The user device 160 can transmit instructions204 to the server 102 to place a wager 154 using the wager information150 or a portion of the wager information 150 represented by the wagerinitiation actionable object 136. In embodiments, the user device 160can transmit multiple sets of instructions 204 to the server 102 toplace multiple wager 154 using the wager information 150 with each setof instructions 204 corresponding to at least one selected wagerinitiation actionable object 136 and at least one wager 154. Theinstructions 204 can include a type of wager, a wager amount (ormultiple wager amounts), a time 126 the wager initiation actionableobject 136 was selected, a type of event 116, a team name, a contestname and/or an outcome. In some embodiments, the user device 160 cantransmit the wager 154 to be processed at the server 102. The wager 154can include or identify a type of wager, a wager amount (or multiplewager amounts), a time 126 the wager initiation actionable object 136was selected, a type of event 116, a team name, a contest name and/or anoutcome.

Referring now to operation (328), and in some embodiments, the dataobject can be generated. The server 102 can receive the instructions 204from the user device 160 and generate a wager 154 (e.g., generate a dataobject) using the wager information 150 or a portion of the wagerinformation 150 indicated by the instructions 204. The server 102 cangenerate the wager 154 based in part on the time value 128 of when thewager initiation actionable object 136 was selected at the user device160 via the application 164. The server can generate the wager based inpart on the odds 124 for an outcome of the event 116 represented by thewager information 150 and the time value 128. In embodiments, the server102 can generate a wager 154 for each set of instructions 204 receivedform the user device 160 or from multiple user devices 160. The server102 can generate the wager 154 to include or identify a type of wager, awager amount (or multiple wager amounts), a time 126 the wagerinitiation actionable object 136 was selected, a type of event 116, ateam name, a contest name and/or an outcome.

In some embodiments, the server 102 can receive the wager 154 from theuser device 160 and process or enter the wager 154, for example, in acontest or central contest database to officially enter the wager 154.In embodiments, the server 102 can update the user profile 120 for theuser to include or indicate the wager 154 and the associated wagerinformation 150. For example, the server 102 can update the datastructure 110 to include a device identifier 162 for the secondarydevice 160 of the user responsive to the interaction with the link 134from the secondary device 160 and provide the updated data structure 110for a user profile 120 maintained at the server 102 for the user of thesecondary device 160. In some embodiments, the server 102 can update agroup profile 122 that the user profile 120 for the user is includedwithin to include or indicate the wager 154 and the associated wagerinformation 150. The server 102 can transmit a notification to the userdevice 160 indicating that the wager 154 has been processed and isactive.

B. Systems and Methods for Providing Wager Recommendations Based onStreaming Data

At least one other aspect of the present disclosure is directed tosystems and methods of providing content items based on streaming dataor television content. The content items can be provided, for example,in accordance with any of the functionalities described herein above inconjunction with Section A. For example, recommendations can bepresented in streaming data that is provided to a television, set-topbox (e.g., a cable-box or node 450, etc.), or other type of user device(sometimes referred to as a “broadcast receiver device,” which canreceive broadcast content such as cable television, satellite streams,or other content streams) as described in this section. Any of thetechniques described herein can be provided in this section cansimilarly be performed by the computing devices described herein abovein Section A.

Content can be streamed to end user devices via set top boxes or displaydevices. The content can include real-time events, such as sportingevents. Content providers and other third-party services may wish toengage with such users while they are watching or consuming the streamedcontent.

Referring now to FIG. 4A, depicted is an environment 400 having a server402, a node 450 and one or more user devices 460. The node 450 canprovide or stream content 420 to a first user device 460 including oneor more events 422 (e.g., sports games, football games) and generate orprovide a data structure 440 for the first user device 460 having one ormore wager recommendations 442 (which may be, or include, content items)generated based in part on the current event 422 being displayed throughthe first user device 460 and/or one or more events 422 available to bedisplayed through the first user device 460. In embodiments, a server402 (e.g., content server 402) can provide the data structure 440 andone or more wager recommendations 442 to the node 450 for displaythrough the first user device 460. For example, in one embodiment, thenode 450 can include or correspond to a network hub or televisionstreaming server that provides television content 420 to the first userdevice 460 and the first user device 460 can include a television orcomputing device connected to the streaming service. The node 450 canstream television content 420 to the first user device 460 including oneor more sporting events 422 and provide wager recommendations 442displayed concurrent with the events 422 to provide wager opportunities(e.g., content items) for a user of the user device 460 based in part ona current or active event 422 the user is respectively watching oraccessing through the first user device 460. The wager recommendations442 can be provided with a link 446 that enables a user to interact withor select a wager recommendation 442. The node 450 can detect theselection of the wager recommendation 442 and transmit a message 462 toa second, different user device including a wager initiation actionableobject 448 for the user to place a wager 476 (where placing a wager issometimes referred to herein as “generating a data object,” and wherewagers are sometimes referred to as “data object(s)”) through a clientapplication 474 of the second user device 460. In embodiment, the usercan interact with the content 20 and events 422 provided at the firstuser device 460 to make selections or request information to place awager via a client application 474 executing on a second user device460.

The environment 400 can include a cloud computing environment. The cloudcomputing environment 400 may be public, private, or hybrid. Publicclouds may include public servers that are maintained by third partiesto one or more user devices 460 or the owners of one or more userdevices 460. The servers may be located off-site in remote geographicallocations as disclosed above or otherwise. Public clouds may beconnected to the servers over a public network. Private clouds mayinclude private servers that are physically maintained by one or moreuser devices 460 or owners of one or more user devices 460. Privateclouds may be connected to the servers over a private network. Hybridclouds may include both the private and public networks and servers. Inembodiments, the environment 400 can be the same as or substantiallysimilar to network 570 or cloud 575 of FIG. 5B.

The server 402 can include a content server configured to generate wagerrecommendations 442 (e.g., content items) and wager information 430(where wager information is sometimes referred to herein as “objectinformation”). The server 402 can generate the wager recommendations 442based in part on the wager information 430, wager parameters 432 (wherewager parameters are sometimes referred to herein as “objectparameter(s)”), a time value 434 of an event 422, odds 436, and/or awager amount 438. The server 402 can be implemented using hardware or acombination of software and hardware. For example, each component of theserver 402 can include logical circuity (e.g., a central processing unitor CPU) that responses to and processes instructions fetched from amemory unit (e.g., memory, storage device 406). Each component of theserver 402 can include or use a microprocessor or a multi-coreprocessor. A multi-core processor can include two or more processingunits (e.g., processor 404) on a single computing component. Eachcomponent of the server 402 can be based on any of these processors, orany other processor capable of operating as described herein. Eachprocessor can utilize instruction level parallelism, thread levelparallelism, different levels of cache, etc. For example, the server 402can include at least one logic device such as a computing device havingat least one processor 404 to communicate, for example, with the node450 and one or more user devices 460. The components and elements of theserver 402 can be separate components or a single component. The server402 can include a memory component (e.g., storage device 406) to storeand retrieve wager recommendations 442, wager information 430, wagerparameters 432, and/or odds 436. The memory 406 can include a randomaccess memory (RAM) or other dynamic storage device, for storinginformation, and instructions to be executed by the server 402. Thememory 406 can include at least one read only memory (ROM) or otherstatic storage device for storing static information and instructionsfor the server 402. The memory 406 can include a solid state device,magnetic disk or optical disk, to persistently store information andinstructions. In some embodiments, the server 402 can include ordeployed as, and/or be executed on any type and form of computingdevice, such as any desktop computer, laptop computer, or mobile devicecapable of communication over at least one network and performing theoperations described herein. In embodiments, the server 402 can be thesame as or substantially similar to computer 800 of FIG. 8A or server895 of FIG. 8B. In some implementations, the server 402 can implement,or perform, any of the functionalities of the server 102 detailed hereinin connection with Section A of the present disclosure.

The server 402 can provide a script 408 to a node 450. The script 408can include a command, code, automation tool, program or set ofinstructions for determining wager information 430 and/or generatingwager recommendations 442. The script 408 can reference or point to adatabase (e.g., storage device 406 of server 402) for retrieving oraccessing data and wager information 430 (e.g., odds 436) associatedwith wager recommendations 442 for one or more events 422. The script408 can include instructions for determining wager parameters 432, odds436 and/or wager amounts 438 for one or more events 422. In someembodiments, the script 408 can include a link or command to access orrequest wager information 430 and/or generating wager recommendations442 from the server 402. In embodiments, the script 408 can cause thenode 450 to establish a communications session 480 between the node 450and the server 402. In some embodiments, a script 408 can be provided toa user device 460 to monitor and detect content 420 streamed, accessedor provided to the user device 460 by the node 450. In embodiments, thescript 408 can cause the user device 460 to establish a communicationssession 480 between the user device 460 and the node 450 and/or betweenthe user device 460 and the server 402.

The server 402 can maintain one or more user profiles 482, for example,for a plurality of different users. In embodiments, each user profile482 can be linked with or associated with at least one user. In someembodiments, a user profile 482 can be generated for a user responsiveto a registration process, log-in attempt and/or responsive to a firstinteraction with the server 402 and/or client application 474 via a userdevice 460. The user profile 482 can include a data structure or entryin a database of the memory 406 of the server 402 for storing andmaintaining one or more previous wagers 476, one or more previouslyselected wager recommendations 442, wager information 430, wagerparameters 432, one or more watched events 422, event parameters 426,one or more user devices 460 associated with the user and/or a streaminghistory 486 for the user. For example, the user profiles 482 can includethe history 486 indicating the type content 420 and/or events 422 one ormore user devices 460 of the user have accessed or received from thenode 450. The history 486 can include historical data or previous wagers476, selections or interactions made by the user via one or more userdevices 460 and the node 450. The history 486 can include a history oftelevisions shows, television content 420 and/or third party content 420accessed by one or more user devices 460 via the node 450. Inembodiments, the user profile 482 can include a wager history for theuser. In some embodiments, the server 402 can receive or access thecontent history 452 of the node and update the streaming history 486 fora user in the respective user profile 482. In embodiments, the userprofile 482 can include a wager history 488 identifying one or moreprevious wagers 476 placed by a user and wager information 430associated with the wagers 476. The wager history 488 can indicaterelationships between particular wagers, wagers types, and/or wageramounts made by a user. The user profile 482 can include userpreferences including, but not limited to, hometown, location, favoritesports teams, favorite sports, favorite athletes, and/or favorite typesof wagers.

The server 402 can maintain one or more group profiles 484. The groupprofile 484 can include a group of users or group of user profiles 482having similar user preferences, historical data, previous wagers,selections and/or interactions with the server 402, node 450 and/or oneor more user devices 460. The group profile 484 can include a group ofusers or group of user profiles 482 participating in or active in thesame contest, watching the same event 422, and/or placing wagers 476 onthe same event 422. The group profile 484 can include or link together aplurality of user profiles 482 for a plurality of different users, forexample, to recommend or identify wager recommendations 442 for themembers of the group profile 484 based in part on the data associatedwith the other members of the group profile 484. In embodiments, thegroup profile 484 can include a wager history for the group of users.

The server 402 can generate one or more data structures 440 that includeone or more wager recommendations 442 corresponding to one or morepotential outcomes for an event 422 or occurrences during an event 422.In embodiments, the wager recommendations 442 can include potentialwager opportunities for an event 422, including but not limited to, awinning team, a total points scored in the event, a total points by oneteam, an over/under bet, a moneyline bet, straight bet, total line bet,or parlay bet. The server 402 can generate or provide odds 436 for awager recommendation 442. The odds 436 can correspond to a probabilitythat a particular outcome will occur. The odds 436 can include or referto a measure of the likelihood of a particular outcome in an event 422.In embodiments, the odds 436 can be calculated or determined as a ratioof a number of events or occurrences during an event 422 that produce aparticular outcome versus the number of events or occurrences during theevent 422 that don't produce the particular outcome. The odds 436 can bebased in part on generated based in part on a time value 434 (e.g., timeremaining) in a particular event 422. In some embodiments, the server402 can receive or access the odds 436 from a third party server orthird party application.

Wager information 430 can include one or more teams participating in anevent 422, one or more players participating in an event 422, a timevalue 434 for the event 422, a score of the event 422, odds 436associated with one or more potential outcomes of an event 422, a wageramount 438, and/or a payout amount. Wager parameters 432 can include,but are not limited to, a type of wager 476, a wager amount, a timeassociated with the wager 476 (e.g., when wager was placed), one or moreteams included in the wager 476, a contest name, an outcome, a time whena selection was made, a time when a wager 476 was placed, a type ofsport, a type of contest, odds 436 associated with the event 422, and/orodds 436 associated with the wager 476.

A time value 434 can include a time stamp, a time range, a time periodor a particular point in time. In embodiments, the time value 434 canindicate a time of an interaction (e.g., with a link, with a contentitem), a time remaining in an event 422, a start time for an event 422,a duration for an event 422, or an end time for an event 422. In someembodiments, the time value 434 can include or represent an expirationdate for an event 422. The time value 434 can indicate when the event422 expires and/or when an opportunity to place a wager 476 on the event422 expires. A wager amount 438 can include an amount placed on a wager476. The wager amount 438 can be pre-generated by the server 402 andassigned to a wager recommendation 442 and/or wager initiationactionable object 448. In embodiments, the wager amount 438 can beentered or provided by a user, for example, through a client application474 executing on a user device 460 for a wager recommendation 442 and/orwager initiation actionable object 448 to be assigned to a wager 476.

The event 422 can include a contest, sporting event, or any type ofevent that a user can place a wager on or bet on. For example, the event422 can include a contest that one or more users can register for toparticipate in (e.g., registrants). The event 422 can include or referto, but is not limited to, a football game, basketball game, a soccermatch, golf tournament, baseball game, an e-sports event (e.g. a videogame or computer game contest), or any type of sporting contest. Theevent 422 can include sporting events that are scheduled within adetermined time period (e.g., planned but not started yet) and/or activesporting events that are underway (e.g., have started or begun) but havenot completed yet. The event 422 can include one or more parameters. Theevent parameters 128 can include, but are not limited to, a type ofwager 154, a wager amount, a team name, a contest name and/or anoutcome. The event parameters 128 can include, but are not limited to, atime when a selection was made, a time when a wager 476 was placed, atype of sport, a type of contest, odds 436 associated with the event422, and/or odds 436 associated with the wager 476.

In some embodiments, the server 402 can generate the wagerrecommendations 442 and/or wager information 430 based in part on datareceived from one or more data sources. The data sources can include agame server that provides real-time updates to live sporting events, oneor more servers of sportsbooks or other servers that generate odds orlines for live sporting events, among others. For example, the server402 can be in communication with one or more third party servers thatperiodically provide data that the server 402 can use to generate one ormore wager recommendations 442 and/or wager information 430 and/orupdate one or more wager recommendations 442 and/or wager information430. The data provided to the server 402 can include a plurality ofpossible future outcomes for one or more sporting events 422, includingbut not limited to future outcomes pertaining to individual players,teams, or multiple teams. In addition, the data can include a currentvalue that is based on a likelihood that a particular future outcomewill occur based on a current status of one or more sporting events 422.In some such embodiments, the server 402 can establish and maintain acommunication channel with the one or more third-party servers andutilize a recommendation policy that enables the server 402 to accessthe data maintained by the one or more third-party servers, includingthe data the server 402 can use to generate one or more wagerrecommendations 442 and/or wager information 430. In some embodiments,the server 402 can be configured to perform one or more functions of thethird-party servers, including but not limited to dynamically generatingone or more wager recommendations 442 and/or wager information 430 basedon a likelihood that particular future outcomes will occur based on acurrent status of one or more sporting events 422.

The wager recommendations 442 can be generated to include a link 446 orbe associated with at least one link 446. The link 446 can include ahyperlink, uniform resource locator (URL) or reference to one or moreuser devices 460 associated with a user. The link 446 can indicate oridentify a user device 460 of a user or associated with a user profile482 for a user. In embodiments, the link 446 can be configured to causethen node 450 and/or server 402 to establish or request a communicationsession 480 with at least one user device 460. In some embodiments, thelink 446 can be configured to cause the node 450 and/or server 402 totransmit a message 462 to at least one user device and present a wagerinitiation actionable object 448 to the user device 460.

The server 402 can include a prediction engine 410. The predictionengine 410 can generate predictions and probabilities (e.g., odds 436)on future outcomes for one or more events 422. The prediction engine 410can use data for an event 422 including, but not limited to, the teamsinvolved, players involved, time of the event 422, and/or time remainingin the event 422. In embodiments, the prediction engine 410 can generateodds 436 for one or more outcomes (e.g., final score, points scored byeach team, winning team) of an event 422. The prediction engine 410 cangenerate data that indicates that an outcome or feature of the realsports event 422 being above, equal to, or below a threshold. Theprediction engine 410 can generate data that indicates odds 436 aparticular outcome may be achieved if one or more players or one or moreteams scores a predetermined number of points, or achieves apre-determined number of instances of an objective (e.g. touchdowns), orif at least a predetermined total number of points is scored in a game(an “over/under” for a game point total), or if another objective isachieved (e.g. a shutout), or some combination of the above. Theprediction engine 410 can assign weights to one or more outcomes that isindicative of a strength or likelihood of the outcome occurring. Theweights may be determined in any appropriate manner, including by amachine-learning algorithm trained on a training data set. The term“machine-learning algorithm” can be used herein to refer to an algorithmdetermined by a process including machine learning (e.g. amachine-trained algorithm).

In embodiments, the prediction engine 410 can determine a real-timeevent status for one or more events 422. The real-time event status canrelate to any real-time condition, status, or action of a real event422. For example, the real-time event status can indicate whether a gameis close (e.g. whether a score difference between two teams is equal toor smaller than a threshold), or whether a prediction on a futureoutcome of the event 422 is close to being satisfied (e.g. whether atotal number of points in a game is close to a total number of pointscorresponding to an over-under prediction on a future outcome (e.g.within a threshold of the over-under)). Such thresholds can bedetermined based on a time value 434 (e.g. a time since the start of theevent or game, or a time remaining in the event or game). For example, afirst threshold may be implemented for a remaining time that fallswithin a first predetermined range (e.g. a second-to-last quarter oftotal game time), and a second threshold may be implemented for aremaining time that falls within a second predetermined range (e.g. e.g.a last quarter of total game time). The second threshold may be smallerthan the first threshold. Thus, the server 402 can account for timeremaining in an event 422 when determining whether the prediction on afuture outcome associated with the event 422 is close to beingsatisfied. The real-time status can indicate or can be that a game isclose or not (e.g. a binary indication), or can indicate or can be adegree of closeness (e.g. based on a difference between the scores oftwo teams or a difference between a point total and an under/underline). In embodiments, the real-time event status of an event 422 canrelate to whether one or more points were just scored in a game, or if ateam is in a “red-zone” or has been awarded a penalty shot, or if aremaining game time is equal to or below a threshold (or if a time sincethe start of the game is equal to or above a threshold). An event 422may have one or more real-time statuses.

The server 402 can generate one or more scripts 408 to provide to thenode 450. A script 408 can include a command, code, automation tool,program or set of instructions for determining wager information 430and/or generating wager recommendations 442. The script 408 canreference or point to a database (e.g., storage device 406 of server402) for retrieving or accessing data and information associated withwager recommendations 442 for one or more events 422. The script 408 caninclude instructions for determining wager parameters 432, odds 436and/or wager amounts 438 for one or more events 422. In someembodiments, the script 408 can include a link or command to access orrequest wager information 430 and/or generating wager recommendations442 from the server 402.

The node 450 can include a server, network node, streaming service ortelevision content provider. In some embodiments, the node 450 caninclude a network hub or television streaming server that a user device460 connects to for access to television content, streaming servicesand/or one or more third party application content. In one embodiment,the node 450 can provide television content 420 to a first user device460 (e.g., user television, computing device connected to the streamingservice) and the node 450 can stream television content 420 to the firstuser device 460 including one or more sporting events 422 based in parton one or more channels 424 accessed or selected by the user at thefirst user device 460.

The node 450 can be implemented using hardware or a combination ofsoftware and hardware. For example, each component of the node 450 caninclude logical circuity (e.g., a central processing unit or CPU) thatresponses to and processes instructions fetched from a memory unit(e.g., memory, storage device 406). Each component of the node 450 caninclude or use a microprocessor or a multi-core processor. A multi-coreprocessor can include two or more processing units (e.g., processor 404)on a single computing component. Each component of the node 450 can bebased on any of these processors, or any other processor capable ofoperating as described herein. Each processor can utilize instructionlevel parallelism, thread level parallelism, different levels of cache,etc. For example, the node 450 can include at least one logic devicesuch as a computing device having at least one processor 404 tocommunicate, for example, with one or more servers 402 and/or one ormore user devices 460. The components and elements of the node 450 canbe separate components or a single component. The node 450 can include amemory component (e.g., storage device 406) to store and retrieve wagerrecommendations 442 and/or wager information 430. The memory 406 caninclude a random access memory (RAM) or other dynamic storage device,for storing information, and instructions to be executed by the node450. The memory 406 can include at least one read only memory (ROM) orother static storage device for storing static information andinstructions for node 450. The memory 406 can include a solid statedevice, magnetic disk or optical disk, to persistently store informationand instructions.

In embodiments, the node 450 can receive a script 408 from the server402 and generate and provide wager recommendations 442 using the scriptand displayed concurrent with an event 422 through a display 466 of auser device 460. The node 450 can execute the script 408 to generatewager opportunities based in part on a current or active event 422 theuser is respectively watching or accessing through the user device 460.The node 450 can generate a message 462 to provide a user device 460 oneor more wager initiation actionable objects 448 and wager information430 associated with at least one wager recommendation 442 selected at auser device 460. The message 462 can include a data structure, datapacket, script, code, instruction or command. In embodiments, themessage 462 can include one or more wager initiation actionable objects448 and wager information 430 to enable a user to interact with and/orselect at least one wager initiation actionable object 448.

The node 450 can detect a selection 412 (e.g., user selection) and/or aninteraction 414 at one or more user devices 460. In some embodiments,the script 408 can detect a selection 412 (e.g., user selection) and/oran interaction 414 at one or more user devices 460 and provide anindication of the selection 412 or interaction 414 to the node 450and/or server 402. The selection 412 can include a selection 412 of achannel 424 at the user device 460, a selection of a wagerrecommendation 442, and/or a selection of a wager initiation actionableobject 448. The interaction 414 can include an interaction with content420 at the user device 460, interaction with a wager recommendation 442,and/or interaction with a wager initiation actionable object 448. Theinteraction 414 can include a user interaction, a user selection 412and/or a change to the event 422 provided to the user device 460. Insome embodiments, the interaction 414 can include, but is not limitedto, a change in the content 420, a change in the channel 424 beingaccessed or a change in a connection 480 to the user device 460.

The user device 460 can include a client device or a device associatedwith at least one user profile 482. The user device 460 can include, butis not limited to a television device, computing device or a mobiledevice. The user device 460 can include or correspond to an instance ofany client device, mobile device or computer device described herein. Inembodiments, the user device 460 can be the same as or substantiallysimilar to computer 800 of FIG. 8A. The user device 460 can beimplemented using hardware or a combination of software and hardware.For example, each component of the user device 460 can include logicalcircuity (e.g., a central processing unit or CPU) that responses to andprocesses instructions fetched from a memory unit (e.g., memory, storagedevice 406). Each component of the user device 460 can include or use amicroprocessor or a multi-core processor. A multi-core processor caninclude two or more processing units (e.g., processor 404) on a singlecomputing component. Each component of the user device 460 can be basedon any of these processors, or any other processor capable of operatingas described herein. Each processor can utilize instruction levelparallelism, thread level parallelism, different levels of cache, etc.For example, the user device 460 can include at least one logic devicesuch as a computing device having at least one processor 404 tocommunicate, for example, with one or more servers 402 and/or one ormore user devices 460. The components and elements of the user device460 can be separate components or a single component. The user device460 can include a memory component (e.g., storage device 406) to storeand receive content 420, events 422, wager recommendations 442, wagerinformation 430, and wager initiation actionable objects 448. The memory406 can include a random access memory (RAM) or other dynamic storagedevice, for storing information, and instructions to be executed by theuser device 460. The memory 406 can include at least one read onlymemory (ROM) or other static storage device for storing staticinformation and instructions for the user device 460. The memory 406 caninclude a solid state device, magnetic disk or optical disk, topersistently store information and instructions. In some embodiments,the user device 460 can include or deployed as, and/or be executed onany type and form of computing device, such as any desktop computer,laptop computer, or mobile device capable of communication over at leastone network and performing the operations described herein. In someimplementations, the user device 460 can implement, or perform, any ofthe functionalities of the non-regulated device 140 or the user device160 detailed herein in connection with Section A of the presentdisclosure.

The user device 460 can include a display 466 or display portion. Thedisplay 466 can include a display portion of a television, a displayportion of a computing device, a graphical user interface (GUI) (e.g., atouchscreen, a display, etc.) and one or more input/output (I/O) devices(e.g., a mouse, a keyboard, digital key pad). The display 466 caninclude one or more portions, for example, to display multiple events422, multiple data structures 440 and/or events 422 and data structures440 concurrently. The display 466 can include a tough screen displayinga data structure 440 as a border region (e.g., side border, top border,bottom border) of the display 466. In some embodiments, the display 466can include a tough screen display one or more wager recommendations 442in a menu or listing and in the form of selectable content items on thedisplay 466. The user device 460 can include an input device thatcouples or communicates with the display 466 of the user device 460 toenable a user to interact with and/or select one or more wagerrecommendations 442 using a link 446 provided with the wagerrecommendations 442. The display 466 can enable interaction with one ormore visual indications provided through the display 466 of the userdevice 460 and responsive to an interaction (e.g., select, click-on,touch, hover), the user device 460 can generate an indicationidentifying a user input and/or selection of at least one wagerrecommendation 442.

The user device 460 can include a device identifier 464. The deviceidentifier 464 can include a script, code, label, or marker thatidentifies a particular user device 460. In embodiments, the deviceidentifier 464 can include a string or plurality of numbers, letters,characters or any combination numbers, letters, and characters. In someembodiments, each device can have a unique device identifier 464. Theuser device 460 can include a client application 474. The clientapplication 474 can include a user application executing on the userdevice 460 or provided to the user device 460 by the server 402. Theapplication 474 can include a web application, a server application,resource, desktop and/or file. In embodiments, the application 474 caninclude local applications (e.g., local to a user device 460), hostedapplication, Software as a Service (SaaS) application, virtualapplication, mobile application, and other forms of content. In someembodiments, the application 474 can include or correspond toapplications provided by remote servers or third party servers. Inembodiments, the application 474 can access the wager information 430stored and maintained at the server 402 and generate a wager initiationactionable object 448 to a user through the user device 460. The wagerinitiation actionable object 448 can include a user-selectable hyperlinkthat initiates a process to generate a wager 476 using the wagerinformation 430 and transmit the wager 476 from the user device 460,through the application 474, to the server 402. In embodiments, thewager initiation actionable object 448 can include a user-selectablehyperlink that initiates a process to transmit instructions 478 to theserver 402 to place a wager 476 using the wager information 430corresponding to the selected wager initiation actionable object 448. Insome embodiments, the wager initiation actionable object 448 can includea user-selectable hyperlink that initiates a process to download awebpage, additional wager information 430, odds 436 (e.g., updated odds,current odds), and/or registration information to register a user of theuser device 460 in a contest and/or place one or more wagers 476.

In embodiments, one or more communication sessions 480 can beestablished between the server 402, the node 450 and one or more userdevices 460. The session 480 can include a channel or connection betweenthe server 402, the node 450 and/or one or more user devices 460. Thesession 480 can include an application session (e.g., virtualapplication), an execution session, a desktop session, a hosted desktopsession, a terminal services session, a browser session, a remotedesktop session, a URL session and/or a remote application session. Thesession 480 can include encrypted and/or secure sessions. The encryptedsession 480 can include an encrypted file, encrypted data or traffic.

The user device 460 can display the event 422 and/or data structure 440based in part on or more display parameters 416. The display parameters416 can include, but are not limited to, a position of the datastructure 440 within the display 466, a number of pixels allocated tothe data structure 440, a size of the display of the data structure 440,a portion of the display 466 assigned to the data structure 440 and/or aprominence of the data structure 440 within the display 466. Inembodiments, the user device 460 can generate or determine the displayparameters 416. In some embodiments, the user device 460 can receive thedisplay parameters 416 from the node 450 and/or the server 402. Thedisplay parameters 416 can be determined based in part on a currentchannel 424 accessed by the user device, a current event 422 beingaccess by the user device, a data structure 440 provided to the userdevice 460, user preferences and/or properties (e.g., size) of thedisplay 466 of the user device 460.

The node 450 can include or maintain a content history 452 for content420 accessed or provided to a user and/or user device 460 associatedwith the user. The content history 452 can include a plurality ofchannels 424 accessed or watched by the user through one or more userdevices 460. The content history 452 can include a plurality of content420 and/or events 422 accessed or watched by the user through one ormore user devices 460. The content history 452 can include propertiesand/or characteristics of the content 420 and/or events 422, includingbut not limited to, types of content 420, frequency different types ofcontent 420 are accessed, types of events 422 (e.g., types of sports,teams involved), and frequency different types of events 422 content 420are accessed. The content history 452 can include a time stamp or timedata indicating when the content 420, channel 424 and/or event 422 whereaccessed (e.g., stream to user device 460, provided to user device). Insome embodiments, the content history 452 can include or correspond to astreaming history or viewing history of content 420 accessed at one ormore user devices 460 for a user. The content history 452 can include ahistory of televisions shows, television content 420 and/or third partycontent 420 accessed by one or more user devices 460 via the node 450.

Referring now to FIG. 4B, a table showing a representation of a wagerhistory 488 for a user is provided. The table 488 can be used toidentify relationships between particular wagers 476, wagers types,and/or wager amounts 438 made by a user. The wager history 488 cancorrespond to a wager history for a single user or multiple users. Forexample, the wager history 488 can be stored and maintained in a userprofile 482 for a user or a group profile 484 for a group of users. Thetable 488 includes a first column identifying the particular wager 476(e.g., wager A, wager B, etc.). The table 488 includes a second columnidentifying whether the wager 476 was for a parlay bet or a single bet.It should be appreciated that the table 488 can include other types ofwagers and/or bets placed by a user (e.g., a winning team, a totalpoints scored in the event, a total points by one team, an over/underbet, a moneyline bet, straight bet, total line bet). The table 488includes a third column identify a wager type (e.g., wager type 1, wagertype 2, etc.) for a wager. In embodiments, the wager type can include,but not limited to, winning team, total points, moneyline bets, spreadbets, or over/under bets. The table 488 can include a fourth columnidentifying whether the wager was a pre-game wager (e.g., before contestbegins) or a live in-game wager (e.g., real-time wagers, play-byplaywagers). The table 488 includes a fifth column identifying wager amounts438 for the corresponding wager. The table 488 includes a sixth columnidentifying a time 434 that a wager 476 was placed or entered.

The server 402 and/or node 450 can generate wager recommendations 442for a user or group of users based in part on a wager history 488maintained for the user profile 482 and/or group profile 484. The server402 and/or node 450 can use properties from the wager history 488 todetermine betting patterns for a user or a group of users based in parton the wager history 488. In embodiments, the server 402 and/or node 450can determine that team A is included in multiple wagers 476 placed bythe user or group of users. The server 402 and/or node 450 can identifythe number of times the user or group of users has placed a particulartype of wager and/or properties of the wagers 476 placed by the user orgroup of users. For example, the server 402 and/or node 450 candetermine that a user places a first type of wager with the highestfrequency and typically bets on the moneyline as a pregame wager. Inembodiments, the server 402 and/or node 450 can generate one or morewager recommendations 442 (e.g., bet recommendations) for the user orsimilar users for one or more events 422 being accessed at one or moreuser devices 460, available to be accessed at one or more user devices460, and/or scheduled to occur in a determined time period indicating afirst type of wager based in part on the wager history 123.

In embodiments, the server 402 and/or node 450 can determine that a userdevice 460 is accessing or streaming a particular event 422 (e.g.,football game) and that a group of other users or other user deviceshave recently placed moneyline type wagers on the event 422 prior to theevent 422 starting. The server 402 and/or node 450 can generate a wagerrecommendation 442 for the user recommending a moneyline bet as apre-game wager 476 for the event 422. In embodiments, the server 402and/or node 450 can generate one or more wager recommendations 442 forthe user based on similar wagers 476 the user has placed in the past forsimilar events 422, for example, an additional wager recommendation 442recommending a parlay wager 476 using the moneyline as a pre-game wager476. The number of wager recommendations 442 can vary and can beselected based at least in part on the properties of one or more events422 and the wager history 488.

Referring now to FIG. 5, depicted is an environment 500 having a firstuser device 460 and a node 450 in communication with a clientapplication 474 executing on a second user device 460 to providemodifiable content 502. The node 450 can transmit the modifiable content502 to the user device 460 (e.g., second user device 460) in response toan interaction or selection of at least one wager recommendation 442provided to the user through a first user device 460. In someembodiments, the node 450 can include a network hub 506 (e.g., receiver,dropbox) provided at the first user device 460 to provide content 420the first device 460 including one or more events 422. The hub 506 canexecute the script 408 to provide or stream the content 420 and event422 to the first user device 460. In embodiments, the hub 506 canexecute the script 408 to generate and display the data structure 440including one or more wager recommendations 442, wager information 430(e.g., teams, score, time value 434) associated with the wagerrecommendations 442, odds 436 for wager recommendations 442, a wageramount 438, a payout amount 512 and a link 446 to select thecorresponding wager recommendation 442.

The node 450, in response to the selection 412 of a wager recommendation442 using the link 446, can transmit a message 462 including themodifiable content 502 and at least one wager initiation actionableobject 448 corresponding to the selected wager recommendation 442. Inembodiments, the modifiable content 502 can include but is not limitedto wager information 430, odds 436, wager amount 438 and/or payoutamount 512. The user device 460 that the message 462 and modifiablecontent 502 is transmitted to can include a different user device 460from the user device 460 that the wager recommendation 442 selection wasmade. In some embodiments, the node 450 can transmit the message 462 andthe modifiable content 502 to the same user device 460 that the wagerrecommendation 442 selection was made.

The modifiable content 502 can be provided through a client application474 executing on the user device 460 or provided to the user device 460from a server (e.g., server 402) or third party application. Inembodiments, the client application 474 can launch responsive to themessage 462 being received at the user device 460 and the clientapplication 474 can populate one or more fields to include themodifiable content 502 and display the modifiable content 502 to theuser of the user device 460. In some embodiments, the client application474 can launch responsive to an interaction with the message 462 (e.g.,user interaction, access or open message) at the user device 460 and theclient application 474 can populate one or more fields to include themodifiable content 502 and display the modifiable content 502 to theuser of the user device 460.

The client application 474 can display one or more wager initiationactionable objects 448 to the user indicating a wager opportunity for anevent 422. The wager initiation actionable object 448 can include wagerinformation 430 such as the teams participating in the event 422, acurrent score of the event 422, odds 436 associated with the wagerinitiation actionable object 448 (e.g., odds for a winning team, oddsfor a total combined points for the event 422, odds for a moneylinebet), a wager amount 438 and a payout amount 512 that is generated basedin part on the odds 436 and the wager amount 438. The wager amount 438can include a pre-generated amount provided to the client application474 based in part on the selected wager recommendation 442 and/or one ormore previous wager amounts 438 included in a user profile 482 of theuser of the user device 460. The wager amount 438 can include modifiablecontent 502, for example, which can be changed or modified (e.g.,increased, decreased, etc.) by the user to change the wager amount 438the user would like to enter for a proposed wager 476.

In embodiments, the odds 436 can be continually and dynamically updatedduring the event 422 such that the odds 436 as presented at the userdevice 460 can change from a firs time period to a second time period.For example, the odds 436 can change from an originally value aspresented to the user through the client application 474 to a secondtime period when the user makes a selection of the corresponding wagerinitiation actionable object 448. In some embodiments, the node 450 canupdate the odds 436 after the selection of the wager recommendation 442at the first user device 460 to provide current or up-to-date odds 436to the user when the wager initiation actionable object 448 is providedto the user at the second user device 460. The odds 436 can be modifiedbased in part to changes in the event 422 the wager initiationactionable object 448 is associated with. For example, the odds 436 canbe dynamically modified in response to changes in a probability of anoutcome (e.g., winning team, total score, moneyline bet) occurring inthe event 422, score changes during the event, a change in the timevalue 434 of the event 422 (e.g., time remaining changes) and/or one ormore occurrences (e.g., player injured, non-scoring plays) during event422. The node 450 can monitor the event 422 and the odds 436 presentedat the user device 460 can dynamically update the odds 436 to provideup-to-date odds 436 for the respective wager initiation actionableobject 448. In some embodiments, the node 450 can access or receive thedynamic odds 436 from the server 402 or third party and provide themodified odds 436 to the user device 460 through the client application474. The odds 436 can include or correspond to time varying values thatare modified or changed to reflect or correspond to a time value 434(e.g., current time remaining) in the event 422.

In some embodiments, the node 450 and/or server 402 can generate wagerrecommendations 442 for live or real-time betting. For example, thewager recommendations 442 can include or correspond to play-by-playbetting. The node 50 and/or server 402 can generate one or more wagerrecommendations 442 for a user device 460 based in part on a currentevent 422 being accessed or provided to the user device 460, a contenthistory 452 for the user and/or a wager history 488 for the user. Thenode 50 and/or server 402 can generate one or more wager recommendations442 for display through a user device 460 for a particular play orseries of plays (e.g., possession) within a current or live event 422.The node 450 and/or server 402 can generate and update the wagerrecommendations 442 once a sports event 422 begins (e.g., is underway,initiates) and can continue providing and/or updating the wagerrecommendations 442 during the respective sports event 422, for example,through the user device 460. The node 450 and/or server 402 can generatewager recommendations 442 for a particular scoring opportunity (e.g.,goal, home run, touchdown, etc.) within a current or live event 422.

The node 450 and/or server 402 can generate one or more wagerrecommendations 442 responsive to different occurrences that may occurduring a sports event 422. For example, the node 450 and/or server 402can generate a first set of wager recommendations 442 before or as asports event 422 begins. In embodiments, the first set of wagerrecommendations 442 can correspond to a first team to score a goal, afirst player to hit a home run, or a first player to score a touchdown.After a first scoring occurrence or event (e.g., goal, home run,touchdown, etc.) occurs within the sports event 422, the node 450 and/orserver 402 can generate a second set of wager recommendations 442. Thesecond set of wager recommendations 442 can be different from the firstset of wager recommendations 442. In some embodiments, one or more wagerrecommendations 442 from the first set of wager recommendations 442 canbe the same as one or more wager recommendations 442 from the second setof wager recommendations 442. After a second scoring occurrence or event(e.g., field goal, strike out, three point shot) occurs within thesports event 422, the node 450 and/or server 402 can generate a thirdset of wager recommendations 442. The third set of wager recommendations442 can be different from the first set of wager recommendations 442and/or the second set of wager recommendations 442. In some embodiments,one or more wager recommendations 442 from the third set of wagerrecommendations 442 can be the same as one or more wager recommendations442 from the first set of wager recommendations 442 and/or the secondset of wager recommendations 442. The node 450 and/or server 402 cancontinually and dynamically generate one or more wager recommendations442 during a live sports event 422 or sports event 422 that is underwayto provide live betting or play-by-playing.

The node 450 and/or server 402 can continually and dynamically generateone or more wager recommendations 442 that are personalized for a userassociated with a user profile 482 by using user attributes and/or otherdata stored in and/or associated with the user profile 482, includingbut not limited to, a content history 452 and/or a wager history 488.The node 450 and/or server 402 can rank and assign weights to each ofthe wager recommendations 442 provided to a user or previously selectedby the user using a match score. In embodiments, the match score canindicate a likelihood that a user associated with the user profile 482is likely to act upon, select, or engage with a wager recommendation 442or a group of users (e.g., fans at a sports event, fans of the sameteam) associated with a group profile 484 are likely to act upon,select, or engage with a wager recommendation 442. In embodiments, thenode 450 and/or server 402 server 402 can identify and select apredetermined number of wager recommendations 442 (e.g., top three, topfive, top ten) having the highest or greatest match score as compared tothe other wager recommendations 442. The node 450 and/or server 402 canprovide, for example, through a display 466 of a user device 460, thepredetermined number of wager recommendations 442 having the highest orgreatest match score to provide a personalized set of real-time wagerrecommendations 442 to the respective user or group of users.

In embodiments, the node 450 and/or server 402 can determine a positionor location of a data structure 440 and one or more wagerrecommendations 442 within a display 466 of a user device 460 based inpart on the match score of the one or more wager recommendations 442.For example, wager recommendations 442 having a greater match score canbe positioned having a greater prominence within a data structure 440and/or within a display 466 as compared to other wager recommendations442 having a lower prominence. The node 450 and/or server 402 candetermine a position of a first wager recommendation 442 having a firstmatch score. The first match score can correspond to the highest orgreatest match score as compared to match scores of other wagerrecommendations 442. The node 450 and/or server 402 can select or assigna first position to the first wager recommendations 442 within the datasturcutre140 and/or display 466 having a greatest prominence. Forexample, the prominent position with the data sturcutre140 and/ordisplay 466 can include, but not limited to, a top portion and/or astart of a list of the candidate recommendations. The prominence of awager recommendation 442 can be modified using features of the display,such as a stylistic feature (e.g. a particular text style (which canspecify a size, a font, underlining, bold, italics, or another style,and in some embodiments the style is different than the another styleused for a different candidate recommendation), a visual indicator (e.g.a box, circle, or other visual indicator that surrounds or is otherwisepositioned relative to the content item), or any other appropriatefeature.

The node 450 and/or server 402 can position and/or display other wagerrecommendations 442 having less prominence or in a less prominentposition within the data structure 440 and/or display 466 as compared tothe wager recommendations 442 having a higher or greater match score.Thus, the wager recommendations 442 having the highest or greatest matchscore can be positioned and/or displayed with a greater prominence toincrease a likelihood that a user is likely to act upon the wagerrecommendations 442 compared to the other wager recommendations 442 ofthe plurality of wager recommendations 442. In some embodiments, thewager recommendations 442 can be generated based on an ongoing basis orbased in part on an upcoming sporting event 422, for example, scheduledon a television guide or available to the user through the user deviceand node 450 at a later time.

Referring now to FIG. 6, depicted is a display 466 of a user device 460showing a data structure 440 and an event 422 concurrently. The event422 and the data structure 440 can be provided through the display 466such that both the event 422 and the data structure 440 are visible to auser of the user device 460. In embodiments, the data structure 440 canbe generated or provided as an overlay region or border region of thedisplay 466. The user device 460 can assign or position the datastructure 440 within the display 466 based in part on display parameters416 received from the node 450 and/or the server 402.

In embodiments, the data structure 440 can be generated or presentedthrough the display 466 of the user device 460 in a variety of differentformats or locations based in part on a display of the event 422 and/orproperties of the display 466. In some embodiments, the data structure440 can be generated as a side border region (e.g., panel region), topborder region, bottom border region, a combination of two or more of aside border region, top border region, and bottom border region. Inembodiments, the data structure 440 can be generated as an overlayregion over a portion of the event 422 such that both a portion of theevent 422 and the data structure 440 are visible to a user of the userdevice 460. In some embodiments, the data structure 440 can be generatedas or include a sports ticker, a digital on-screen graphic, a score box,or a score bar.

The data structure 440 can include a wager recommendation 442 presentedwithin the border region of the display 466 and adjacent to the activeevent 422. The wager recommendation 442 can include a current score ofthe event 422 and identify the teams participating in the event 422. Thewager recommendation 442 can include a wager amount 438 and a payoutamount 512. The wager recommendation 442 can include odds 436corresponding to time varying values. For example, the node 450 orscript 408 can update the odds 436 based in part on a time value 434 ofthe event 422 and/or a score of the event 422.

The odds 436 can correspond to a probability of an outcome (e.g.,winning team, total score, moneyline bet) occurring in the event 422 andthe odds 436 or probability of the outcome occurring can changes duringthe course of the event 422 as the score changes, an amount of timeremaining changes and/or one or more occurrences (e.g., player injured,non-scoring plays) happen during the event 422. The node 450 and/orscript 408 executing at the user device 460 can dynamically update ormodify the odds 436 for the wager recommendations in response to scorechanges, an amount of time remaining changes and/or one or moreoccurrences (e.g., player injured, non-scoring plays) happen during theevent 422. The odds 436 can include time varying values that aremodified or changed to reflect or correspond to a time value 434 (e.g.,current time remaining) in the event 422.

The data structure 440 can include an account balance 610 for a useraccount or user profile 482 for the user of the user device 460. Thenode 450 and/or script 408 can update or maintain the account balance610 for the user during the event 422 to reflect any changes in theaccount balance, for example, in response to a recently placed wager476, transfer of funds to the user account and/or withdrawal from theuser account. In embodiments, the account balance 308 can include timevary values that the node 450 and/or script 408 dynamically update toreflect changes to the user account for the user of the user device 460.

The data structure 440 can include a message board 602. The messageboard 602 can include a message or note to the user indicating one ormore other users that may have interacted with the same event 422 beingdisplayed on the user device 460, placed wagers 476 on the same event422 being displayed on the user device 460 and/or selected one or moreof the wager recommendations 442 provided to the user through the datastructure 440. In embodiments, the users can include users from thegroup profile 484 that the user profile for the user of the user device460 is included with or linked with. In some embodiments, the users caninclude users having similar characteristics to the user of the userdevice 460, including but not limited to, similar geographic area, samefavorite teams, same favorite players, and/r watching the same event422. In some embodiments, the users can include random users that arewatching and placing wagers 476 on the same event 422 the user of theuser device 460 is watching.

The data structure 440 can include a link 446. In embodiments, the datastructure 440 can include at least one link 446 for each wagerrecommendation 442 provided to enable a user to select the respectivewager recommendations 442 and current odds 436 for placing a wager 476using the wager recommendations 442 and current odds 436. Inembodiments, the link 446 can include a set of instructions, code orscript that when accessed (e.g., interacted with, selected, touched),via the first device 460, causes the node 450 to transmit a message 462to the second device 460 using the second device identifier 464 andpresent a wager initiation actionable object 448 corresponding to theselected wager recommendation 442. For example, responsive to aselection of a link 446, the node 450 can determine the correspondingwager recommendation 442 and odds 436 presented to the user when theuser selected the link 446 and transmit a message 462 to the seconddevice 460 of the user including a wager initiation actionable object448 that includes the wager recommendations 442 and odds 436. Inembodiments, the node 450 and/or script 408 can generate the link 446 toidentify or indicate the second user device the message 462 will betransmitted to, for example, a user mobile device, handheld device orcomputing device. In some embodiments, the node 450 and/or script 408can generate the link 446 to identify or indicate multiple user devicesassociated with the user and enable the user to select or indicate whichuser device to transmit the message 462 and wager initiation actionableobject 448.

Referring now to FIGS. 7A-7B, depicted is a flow diagram of oneembodiment of a method 700 for providing wager recommendations based onstreaming data. In brief overview, the method 700 can include one ormore of: providing a script (702), applying the script (704), receivinga user selection (706), identifying content (708), determining wagerinformation (710), providing wager recommendations (712), identifying aninteraction (714), identifying a device (716), transmitting a message(718), accessing an application (720), populating an application (722),receiving a wager initiation (724), transmitting the wager initiation(726), processing a wager (728), identify a new channel (750), providingwager recommendations (752), identifying a change in a display (760),modifying display parameters (762), and providing display parameters(764). The functionalities of the method 300 may be implemented using,or performed by, the components detailed herein in connection with FIGS.1A, 2, 4A, 5, 8A, and 8B.

Referring now to operation (702), and in some embodiments, a script 408can be provided. A server 402 can generate and provide a script 408 to anode 450 and the script 408 can include instructions for generatingwager recommendations 442 based in part on an event 422 being accessedor watched by a user. The script 408 can include a command, code,automation tool, program or set of instructions for determining wagerinformation 430 and/or generating wager recommendations 442. The script408 can reference or point to a database (e.g., storage device 406 ofserver 402) for retrieving or accessing data and information associatedwith wager recommendations 442 for one or more events 422. The script408 can include instructions for determining wager parameters 432, odds436 and/or wager amounts 438 for one or more events 422. In someembodiments, the script 408 can include a link or command to access orrequest wager information 430 and/or generating wager recommendations442 from the server 402.

Referring now to operation (704), and in some embodiments, the script408 can be applied. The node 450 can apply the script 408 to content 420accessed by one or more devices 460. The devices 460 can include clientdevice, user device, television, mobile device, handheld computingdevice, and/or an application 474 executing on at least one of a clientdevice, user device, television, mobile device, or handheld computingdevice. The node 450 can provide or stream content 420 to a user device460, for example, but not limited to, television content providedthrough a plurality of different channels 424. The content 420 caninclude television content, third party application content, streamingservices and/or internet content. In some embodiments, the node 450 caninclude or correspond to a TV provider hub (e.g., dropbox, receiver,modem, etc.) that the user device 460 connects with to access theplurality of channels 424. The node 450 can apply the scrip108 tocontent 420 to monitor the content 420 and identify one or more events422 being provided or displayed to a user through the respective userdevice 460. In embodiments, the script 408 can execute at the node 450and monitor or track the content 420 and events 422 being accessed by auser device 460. The script 408 can execute and monitor a connection 480to a user device 460 to track the content 420 and events 422 beingaccessed by the user device 460. In embodiments, the script 408 canexecute at the user device 460 and monitor or track the content 420 andevents 422 being accessed by the user device 460. In embodiments, thescript 408 can detect and monitor content 420 streamed, accessed orprovided to the user device 460, for example, to generate and/ormaintain a content history 452 (e.g., streaming history) for the userand/or user device 460

In embodiments, the node 450 can modify the script 408 based in part onproperties of a user profile 482 (e.g., subscription information,channel access) associated with a user of the user device 460,connection properties for a connection 480 between the node 450 and theuser device 460 and/or policies of the node 450. The node 450 can modifythe script 408 to update or change one or more lines of code orinstructions of the script 408, for example, to adapt or configure thescript 408 for execution on the node 450, a connection 480 and/or a userdevice 460. In some embodiments, the node 450 can modify the script 408based in part on a type of service or subscription the user and/or userdevice 460 has with the node 450 or streaming service provided by thenode 450.

Referring now to operation (706), and in some embodiments, a userselection 412 can be received or identified. The node 450 can receive,detect or identify a user selection 412 of a channel 424 at the userdevice 460. The channel 424 can include or correspond to an event 422,including but not limited to a sporting event (e.g., football game,baseball game, basketball game). The node 50 can determine or receive anindication of the channel 424 the user is currently watching through theuser device 460. In some embodiments, the script 408 can detect thechannel 424 the user is currently watching through the user device 460and provide an indication identifying the respective channel 424.

Referring now to operation (708), and in some embodiments, content 420can be identified. The node 450 can determine the content 420 beingaccessed by the user device 460. In embodiments, the node 450 can usethe channel 424 to determine the content 420 being currently accessed orprovided to the user device 460. The node 450 can access or maintain atelevision guide or television schedule indicating what events 422,shows or other forms of content 420 are being provided on what channels424. In some embodiments, the node 450 can access a television guide ortelevision schedule from a third party server or database indicatingwhat events 422, shows or other forms of content 420 are being providedon what channels 424. The node 450 can determine an event 422 currentlybeing provided to the user device 460 and displayed on the user device460.

Referring now to operation (710), and in some embodiments, wagerinformation 430 can be determined. The node 450 can determine wagerinformation 430 based in part on the event 422 being access or providedto the user through the user device 460. The wager information 430 caninclude one or more wager parameters 432 and/or one or more eventparameters 426. In embodiments, the node 450 can use the eventparameters 426 to determine or generate wager parameters 432 for theevent 422. In some embodiments, the node 450 can access or receive thewager parameters 432 from a third party source or third party server(e.g., contest server, server 402, betting server, etc.). The wagerparameters 432 can include but are not limited to, a type of wager, awager amount, a time associated with a wager 476 (e.g., duration wageris open or available), one or more teams included in a wager 476, acontest name, an outcome, a type of sport, a type of contest, odds 436associated with the event 422 and/or with the wager 476. The eventparameters 426 can include, but are not limited to, a type of sport,time value 434 for the event 422 (e.g., start time, duration, timeremaining, end time), teams involved in the event 422, players involvedin the event 422, one or more possible outcomes, and/or a contest name.

Referring now to operation (712), and in some embodiments, a wagerrecommendation 442 can be provided. The node 450 can generate andprovide one or more wager recommendations 442 to the user device 460.The node 450 can generate the one or more wager recommendations 442 forthe event 422 responsive to the wager information 430, the one or morewager parameters 432, the time value 434 of the event 422 and/or thechannel 424 providing the event 422. The wager recommendation 442 caninclude a possible outcome or occurrence during the event 422 and odds436 (e.g., probability) of the outcome or occurrence happening duringthe event 422. In embodiments, the wager recommendation 442 can includea recommendation to a user for a wager 476 for the event 422 and thewager 476 can include or correspond to a possible outcome (e.g., totalscore, winning team, total points by one team, over/under bet, moneylinebet) for the event 422 or an occurrence (e.g., next team to score,half-time score) during the event 422. The wager recommendation 442 caninclude odds 436 indicating a probability of the outcome or occurrencehappening during the event 422. The wager recommendation 442 and/or theodds 436 for the wager recommendation 442 can be based in part on acurrent score of the event 422 and/or a time value 434 (e.g., timeremaining) of the event 422.

In embodiments, the node 450 can execute the script 408 to generate thewager recommendation 442. The node 450, using the script 408, canrequest or access one or more wager recommendations 442 for the event422 from the server 402 and/or a third party database. The wagerrecommendations 442 can include dynamic or active wager recommendations442 that are generated and dynamically updated as the event 422progresses, a score of the event 422 changes and/or a time value 434 ofthe event 422 changes. In some embodiments, the node 450, using thescript 408, can request or access wager information 430 from the server402 and/or a third party database and generate the wager recommendations442 for the event 422 using the received wager information 430. In someembodiments, the node 450 can use a content history 452 and/or wagerhistory 488 maintained for a user to generate wager recommendations 442for the user based in part on a frequency the user accesses certaintypes of events 422 and a frequency a user places certain types ofwagers 476 on the events 422.

The node 450 can provide the wager recommendation 442 in the form of adata structure 440. The data structure 440 can include one or more wagerrecommendations 442 and data having time varying values associated withthe one or more wager recommendations 442 and the one or more wagerparameters 432. In embodiments, a current value of the time varyingvalues can correspond to the time value 434 of the event 422 (e.g.,current time of event, time remaining in the event). The node 450 canprovide the data structure 440 for display concurrent with the event 422through the first device 460. The data structure 440 can include a link446, that when accessed via the first device 460, causes the node 450 totransmit a message 462 to the second device 460 using the second deviceidentifier 464 and present a wager initiation actionable object 448configured to cause the second device 460 to transmit instructions 478to place a wager 476 using at least one selected wager recommendation442 and the respective one or more wager parameters 432.

The node 450 can provide display parameters 416 for displaying the datastructure 440 at the user device 460. The display parameters 416 caninclude, but are not limited to, a position of the data structure 440within the display 466, a number of pixels allocated to the datastructure 440, a size of the display of the data structure 440, aportion of the display 466 assigned to the data structure 440 and/or aprominence of the data structure 440 within the display 466. Inembodiments, the node 450 can generate the display parameters 416 basedin part on a current display or display parameters of the event 422through the display 466 of the user device 460. The node 450 cangenerate the display parameters 416 to determine a size of the datastructure 440 through the display 466, a number of pixels of the display466 allocated to the data structure 440, a position or location for thedata structure 440 within the display 466, or to assign a portion of thedisplay 466 to the data structure 440. The node 450 can generate thedisplay parameters 416 for the data structure 440 such that the datastructure 440 is displayed concurrently with the event 422 andpositioned based in part on a current view of the event 422.

The display parameters 416 can be provided to the user device 460 in theform of code, a set of instructions or a command causing the user device460 and/or script 408 to display of the data structure 440 relative tothe display of the event 422 within the display 466 of the user device460. The user device 460 can use the display parameters 416 to determinea position of the data structure 440 within the display 466. The userdevice 460 can allocate a number of pixels to the data structure 440within the display 466. In embodiments, the user device 460 can displaythe data structure 440 as an overlay region provided over a portion(e.g., border area, panel area, etc.) of the display of the event 422.The user device 460 can use the display parameters 416 to determine atype of border region the data structure 440 is provided as within thedisplay 466. For example, the data structure 440 can be provided as aborder region within the display 466 such that the event 422 and datastructure 440 are displayed and visible to a user of the user device 460at the same time or concurrently. The user device 460 can use thedisplay parameters 416 to generate the data structure 440 as a sideborder region (e.g., side panel), a bottom border region or top borderregion of the display 466. In some embodiments, the user device 460 canuse the display parameters 416 to generate the data structure 440 as atleast one of a sports ticker, digital on-screen graphic, score box, orscore bar within the display 466 of the user device 460. In embodiments,the display parameters 416 can be provided to display of the datastructure 440 such that the data structure 440 stays visibleconcurrently with the event 422 within the display 466 as the display ofthe event 422 changes during the duration of the event 422.

Referring now to operation (714), and in some embodiments, aninteraction 414 can be identified. The interaction 414 can include auser interaction, a user selection 412 and/or a change to the event 422provided to the first device 460. The user interaction can include, butis not limited to, a change in the content 420, a change in the channel424 being accessed or a change in a connection 480 to the user device460. The user selection 412 can include, but is not limited to, aselection of at least one wager recommendation 442. A change to theevent 422 can include, but is not limited to, a change in a display ofthe event 422 at the user device 460. The node 450 can determine thetype of interaction 414. If the node 450 determines the interaction 414was a selection 412 of a wager recommendation, the method 700 can moveto (316). If the node 450 determines the interaction 414 was a change tothe content 420, the method 700 can move to (750). If the node 450determines the interaction 414 was a change to a display of the event422, the method 700 can move to (760).

Referring now to operation (716), and in some embodiments, a device 460can be identified. The node 450 can identify a second user device 460associated with the user or associated with a user profile 482 for theuser. In some embodiments, the identified device 460 can be the samedevice 460 the user is accessing or watching the event 422 (e.g., mobiledevice, handled computing device). In embodiments, the identified device460 can be a second different device 460 from the device 460 the user isaccessing or watching the event 422. For example, the user can access orwatch the event 422 through a first television device 460 and the seconddevice 460 can include a mobile device 460 or handheld computing device460 for the user.

In embodiments, the node 450 can use the device identifier 464 includedwith the wager information 430 to identify one or more user devices 460associated with the user. The node 450 can provide the device identifier464 to the server 402 and request data associated with one or more userdevices 460 associated with the user. The server 402 can use the deviceidentifier 464 to parse or search a plurality of user profiles 482 toidentify the user and/or the user profile 482 associated with the user.The server 402 can access the identified user profile 482 to identifythe correct or appropriate device 460 and provide the user device 460(e.g., second user device) information to the node 450.

In some embodiments, the node 450 can receive the device identifier 464responsive to the selection or interaction with the link 446 providedwith the data structure 440 and wager recommendation 442. Inembodiments, the link 446 can include a set of instructions, code orscript that when accessed (e.g., interacted with, selected, touched),via the first device 460, causes the first device 460 to transmit adevice identifier 464 to the node 50 indicating which user device ormultiple user devices 460 for the node 450 to transmit the message 462and wager initiation actionable object 448. The link 446 as displayed orpresented via the user device 460 can indicate or identify a user device460 for the node 450 to transmit the message 462 and wager initiationactionable object 448. In some embodiments, when selecting the link 446,the user can enter or indicate a user device 460 for the node 450 totransmit the message 462 and wager initiation actionable object 448. Theuser can enter or provide a device identifier 464 for the respectiveuser device 460. In embodiments, the node 450 can determine the deviceidentifier 464 based in part on the video data at the first device 460when the link 446 is selected. In embodiments, the node 450 and/orscript 408 can generate the link 446 to identify or indicate the seconduser device 460 the message 462 will be transmitted to, for example, auser mobile device, handheld device or computing device. In someembodiments, the node 450 and/or script 408 can generate the link 446 toidentify or indicate multiple user devices 460 associated with the userand enable the user to select or indicate which user device 460 totransmit the message 462 and wager initiation actionable object 448.

Referring now to operation (718), and in some embodiments, a message 462can be transmitted. The node 450 can transmit the message 462 to thesecond device 460 using the second device identifier 464 and present awager initiation actionable object 448 configured to cause the seconddevice 460 to transmit instructions 478 to place a wager 476 using atleast one selected wager recommendation 442 and the respective one ormore wager parameters 432. In embodiments, the node 450 can transmit themessage 462 responsive to a selection of a link 446 provided with thedata structure 440 and associated with at least one wager recommendation442. For example, the node 450 can, responsive to an interaction withthe link 446, identify the second device 460 and transmit the message462 to the second device that includes a wager initiation actionableobject 448 corresponding to or including the wager recommendation 442associated with the selected link 446.

The node 450 can transmit the message 462 to the user device 460 througha communication sessions 480 established between the node 450 and theuser device 460. The node 450 can generate the message 462 to includethe wager initiation actionable object 448. The node 450 can generatethe message 462 to include one or more data packets and the data packetscan include the wager initiation actionable object 448 in a payloadportion of the one or more data packets. In some embodiments, themessage 462 can indicate or identify the user device 460 the wagerrecommendation 442 selection was made and/or a time value 434 indicatingwhen the selection was made. The message 462 can include the wagerinformation 430, one or more wager parameters 432, odds 436 and/or eventparameters 426 associated with the event 422. In some embodiments, themessage 462 can include code or instructions causing the user device 460to generate the wager initiation actionable object 448 in an application474 when the application 474 launches.

Referring now to operation (720), and in some embodiments, anapplication 474 can be accessed. In embodiments, the user device 460 canlaunch an application 474 (e.g., user application, client application)responsive to receiving the message 462, for example, to interact withthe wager initiation actionable object 448. The message 462 can includeor cause a prompt, window or menu to open when received at the userdevice 460. The application 474 can launch responsive to a userinteraction (e.g., click-on, touch, select) with the prompt, window ormenu. In some embodiments, responsive to the user interaction, the userdevice 460 can receive, download or access the application 474 from theserver 402.

In some embodiments, the user device 460 can launch the application 474executable on the user device 460 that is configured to establish acommunication session 480 with the server 402 and access the wagerinformation 430 stored at the server 402 (e.g., storage device 406) viathe communication session 480 and present the wager initiationactionable object 448 configured to cause the second device 460 totransmit instructions 478 to the server 402 to place a wager 476corresponding to the selected wager initiation actionable object 448. Inembodiments, the node 450 can perform a handshake with the user device460 to transmit the message 462 to the user device 460 from the node450.

Referring now to operation (722), and in some embodiments, theapplication 474 can be populated. The user device 460 can launch theapplication 474 and populate one or more fields of the application 474to include one or more wager initiation actionable objects 448 anddisplay the objects 448 to a user through the application 474. Theapplication 474 can be populated to include or present the wagerinformation 430 associated with the wager initiation actionable objects448, including but not limited to, an event name, teams involved in theevent 422, one or more wager parameters 432, a current score of theevent 422, a type of wager, odds 436, time value 434 for the event 422,a wager amount, and/or a payout amount.

In some embodiments, the application 474 can launch on the user device460 and can include a script or code to receive or download the wagerinitiation actionable objects 448 and associated wager information 430from the server 402 or node 450 and populate (e.g., auto-populate) oneor more fields of the application 474 to display the wager initiationactionable objects 448 and associated wager information 430. Theapplication 474 can present or display one or more wager initiationactionable objects 448 to the user of the user device 460. The wagerinitiation actionable objects 448 can correspond to or representopportunities for the user generated based on the wager information 430accessed from the server 402. The wager initiation actionable objects448 can correspond to or be associated with one or more outcomes of theevent 422 (e.g., event 422 currently being accessed and watched at theuser device 460, active event 422 available for viewing at the userdevice 460) and include odds 436 associated with the respective outcomeoccurring. In some embodiments, the wager initiation actionable objects448 can include or correspond to wagers or betting opportunities for theevent 422. The wager initiation actionable objects 448 can includeselectable content, for example, that in response an interaction withthe respective wager initiation actionable object 448, causes the seconddevice 460 to transmit instructions 478 to the server 402 to place awager 476 using the wager information 430 or a portion of the wagerinformation 430 represented by the wager initiation actionable object448.

In embodiments, the user device 460 can update or modify odds 436associated with an event 422 based in part on a time value 434 of theevent 422 (e.g., time remaining in the event) when the wager initiationactionable object 448 is provided to the user device 460. In someembodiments, the user device 460 can receive updated odds 436 from theserver 402 or node 450 when the wager initiation actionable object 448is received at the user device 460. The odds 436 can be updated toreflect a current time value 434 of the event 422 as compared the timevalue 434 of the event 422 when the wager recommendation 442 is selectedat the first user device 460. The odds 436 can be updated to reflect acurrent probability of an outcome associated with the wager initiationactionable object 448 occurring based in part on the time value 434 ofthe event 422 and one or more conditions (e.g., current score, playerstatistics, team statistics) of the event 422. For example, the userdevice 460 can modify the odds 436 for a wager initiation actionableobject 448 using difference in time between when the wager initiationactionable object 448 is received at the second user device 460, a timewhen the wager recommendation 442 is selected at the first user device460 and a time value of 434 of the event 422.

In embodiments, the user device 460 can determine if the odds 436 havechanged, for example, from a time when the wager recommendation 442 isselected at the first user device 460 to the time when the wagerinitiation actionable object 448 is received at the second user device460. If the odds 436 have not changed, the user device 460 can providethe odds 436 for one or more outcomes associated with the event 422 forselection by the user of the user device 460 through one or more wagerinitiation actionable objects 448. If the odds 436 have changed, theuser device 460 can update the odds 436 to reflect the current or mostrecent odds 436 for one or more outcomes associated with the event 422.The user device 460 can provide the modified odds 436 for selection bythe user of the user device through one or more wager initiationactionable objects 448.

Referring now to operation (724), and in some embodiments, a wagerinitiation can be received. The user device 460 can receive anindication of an interaction with at least one wager initiationactionable object 448 or multiple wager initiation actionable objects448. The user device 460 can identify the wager information 430 linkedwith or associated with the wager initiation actionable object 448 andgenerate instructions 478. The instructions 478 can include a command,code or indication of wager information 430 to be used to generate awager 476 when received at the server 402. In some embodiments, the userdevice 460 can generate a wager 476 using the wager information 430linked with or associated with the selected wager initiation actionableobject 448.

Referring now to operation (726), and in some embodiments, instructions478 can be transmitted. The user device 460 can transmit instructions478 to the server 402 to place a wager 476 using the wager information430 or a portion of the wager information 430 represented by the wagerinitiation actionable object 448. In embodiments, the user device 460can transmit multiple sets of instructions 478 to the server 402 toplace multiple wagers 476 using the wager information 430 with each setof instructions 478 corresponding to at least one selected wagerinitiation actionable object 448 and at least one wager 476. Theinstructions 478 can include a type of wager, a wager amount (ormultiple wager amounts), a time the wager initiation actionable object448 was selected, a type of event 422, a team name, a contest nameand/or an outcome. In some embodiments, the user device 460 can transmitthe wager 476 to be processed at the server 402. The wager 476 caninclude or identify a type of wager, a wager amount (or multiple wageramounts), a time the wager initiation actionable object 448 wasselected, a type of event 422, a team name, a contest name and/or anoutcome.

Referring now to operation (728), and in some embodiments, the wager 476can be processed. The server 402 can receive the instructions 478 fromthe user device 460 and generate a wager 476 using the wager information430 or a portion of the wager information 430 indicated by theinstructions 478. The server 402 can generate the wager 476 based inpart on the time value 434 of the event 422 (e.g., current time ofevent, current time remaining in the event). The server 402 can generatethe wager 476 based in part on the odds 436 for an outcome of the event422 represented by the wager information 430 and the selected wagerinitiation actionable object 448. In embodiments, the server 402 cangenerate a wager 476 for each set of instructions 478 received form theuser device 460 or from multiple user devices 460. The server 402 cangenerate the wager 476 to include or identify a type of wager, a wageramount (or multiple wager amounts), a time the wager initiationactionable object 448 was selected, a type of event 422, a team name, acontest name and/or an outcome. In some embodiments, the server 402 canreceive the wager 476 from the user device 460 and process or enter thewager 476, for example, in a contest or central contest database toofficially enter the wager 476. In embodiments, the server 402 canupdate the user profile 482 for the user to include or indicate thewager 476 and the associated wager information 430. In some embodiments,the server 402 can update a group profile 484 that the user profile 482for the user is included within to include or indicate the wager 476 andthe associated wager information 430. The server 402 can transmit anotification to the user device 460 indicating that the wager 476 hasbeen processed and is active. The method 700 can return to (714) to waitfor a subsequent interaction 414 or selection 412.

Referring now to operation (750), and in some embodiments, a new channel424 can be identified. The node 450 can identify that the channel 424being accessed at the user device 460 has changed. The node 450 canreceive an indication of a user selection 412 corresponding to a changeof the channel 424 being accessed or viewed at the user device 460. Insome embodiments, the script 408 can detect the change in the channel424 and transmit an indication of the change to the node 450. Theindication can identify the new channel 424 or current channel 424 beingaccessed by the user device 460. The new or subsequent channel 424 caninclude or correspond to a new event 422, including but not limited to asporting event (e.g., football game, baseball game, basketball game).

The node 450 can determine the content 420 being accessed through thechannel 424 and the new event 422. In embodiments, the node 450 can usethe channel 424 to determine the new content 420 being currentlyaccessed or provided to the user device 460. The node 450 can access atelevision guide or television schedule indicating what events 422,shows or other forms of content 420 are being provided on what channels424 to determine the new event 422. In some embodiments, the node 450can access the television guide or television schedule from a thirdparty server or database indicating what events 422, shows or otherforms of content 420 are being provided on what channels 424. The node450 can determine the event 422 currently being provided to the userdevice 460 and displayed on the user device 460.

Referring now to operation (752), and in some embodiments, a wagerrecommendation 442 can be provided. The node 450 can generate andprovide one or more new wager recommendations 442 to the user device 460based on the new channel 424 and new event 422. In embodiments, the node450 can update the one or more new wager recommendations 442 provided tothe user device 460 based on the new channel 424 and new event 422, forexample, removing one or more previous wager recommendations 442 and/orproviding one or more new wager recommendations 442 corresponding to thenew event 422.

The node 450 can determine new or updated wager information 430 based inpart on the new event 422 being access or provided to the user throughthe user device 460 on the new channel 424. The wager information 430can include one or more wager parameters 432 and/or one or more eventparameters 426. In embodiments, the node 450 can use the eventparameters 426 to determine or generate wager parameters 432 for theevent 422. In some embodiments, the node 450 can access or receive thewager parameters 432 from a third party source or third party server(e.g., contest server, server 402, betting server, etc.). The wagerparameters 432 can include but are not limited to, a type of wager, awager amount, a time associated with a wager 476 (e.g., duration wageris open or available), one or more teams included in a wager 476, acontest name, an outcome, a type of sport, a type of contest, odds 436associated with the event 422 and/or with the wager 476. The eventparameters 426 can include, but are not limited to, a type of sport,time value 434 for the event 422 (e.g., start time, duration, timeremaining, end time), teams involved in the event 422, players involvedin the event 422, one or more possible outcomes, and/or a contest name.

The node 450 can generate the one or more wager recommendations 442 forthe new event 422 responsive to the wager information 430, the one ormore wager parameters 432, the time value 434 of the event 422 and/orthe channel 424 providing the event 422. The wager recommendation 442can include a possible outcome or occurrence during the event 422 andodds 436 (e.g., probability) of the outcome or occurrence happeningduring the event 422. In embodiments, the wager recommendation 442 caninclude a recommendation to a user for a wager 476 for the event 422 andthe wager 476 can include or correspond to a possible outcome (e.g.,total score, winning team, total points by one team, over/under bet,moneyline bet) for the event 422 or an occurrence (e.g., next team toscore, half-time score) during the event 422. The wager recommendation442 can include odds 436 indicating a probability of the outcome oroccurrence happening during the event 422. The wager recommendation 442and/or the odds 436 for the wager recommendation 442 can be based inpart on a current score of the event 422 and/or a time value 434 (e.g.,time remaining) of the event 422.

In embodiments, the node 450 can execute the script 408 to generate thewager recommendation 442. The node 450, using the script 408, canrequest or access one or more wager recommendations 442 for the event422 from the server 402 and/or a third party database. The wagerrecommendations 442 can include dynamic or active wager recommendations442 that are generated and dynamically updated as the event 422progresses, a score of the event 422 changes and/or a time value 434 ofthe event 422 changes. In some embodiments, the node 450, using thescript 408, can request or access wager information 430 from the server402 and/or a third party database and generate the wager recommendations442 for the event 422 using the received wager information 430. The node450 can provide the new or updated one or more new wager recommendations442 to the user device 460 based on the new channel 424 and new event422. The method 700 can return to (714) to wait for a subsequentinteraction 414 or selection 412.

Referring now to operation (760), and in some embodiments, a change in adisplay of the event 422 can be identified. The node 450 can identify ordetect a change in a display of the content 420 and/or event 422 asprovided through a display 466 of the user device 460. The change in thedisplay can include a change in a size of the event 422 through thedisplay 466, a change in a number of pixels of the display 466 assignedto display the event 422, a change in a location and/or position of theevent 422 within the display 466 or moving the event 422 from a firstportion of the display 466 to a second, different portion of the display466. In embodiments, the change in display can include, but is notlimited to, a different viewing angle, a new television angle (e.g.,different camera angle) of the event 422, a change in the content 420 ofthe event 422 (e.g., split screen showing event 422 and stats for event422) or any change in a presentation of the event 422 through thedisplay 466 of the user device 460. In embodiments, the node 450 candetermine the display parameters 416 of the event 422 within the display466 to detect the change in the display of the event 422. For example,the node 450 can determine a current position of the event 422 withinthe display 466, a current number of pixels allocated to the event 422within the display 466 and/or a current size of the event 422 (e.g.,full screen, partial screen) within the display 466. The node 450 cancompare the current display parameters 416 to previous displayparameters 416 of the event 422 to determine if the display of the event422 through the display 466 of the user device 460 has changed or beenmodified.

Referring now to operation (762), and in some embodiments, displayparameters 416 can be modified. The node 450, responsive to detectingthe change, can modify the display parameters 416 for the data structure440 based in part on the changes to the event 422. The displayparameters 416 can include, but are not limited to, a position of thedata structure 440 within the display 466, a number of pixels allocatedto the data structure 440, a size of the display of the data structure440, a portion of the display 466 assigned to the data structure 440and/or a prominence of the data structure 440 within the display 466.The node 450 can modify or change the display parameters 416 for thedata structure 440 such that the data structure 440 is till displayconcurrently with the event 422 and positioned based in part on thechanges to the display of the event 422.

Referring now to operation (764), and in some embodiments, displayparameters 416 can be provided. The node 450 can transmit the modifieddisplay parameters 416 to the user device 460 to cause the user device460 to update or change the display of the data structure 440 relativeto the display of the event 422. In some embodiments, the node 450 canprovide the modified display parameters 416 to the script 408 and thescript 408 can change the display of the data structure 440 relative tothe display of the event 422 within the display 466 of the user device460. The display parameters 416 can be provided to the user device 460in the form of code, a set of instructions or a command causing the userdevice 460 and/or script 408 to change the display of the data structure440 relative to the display of the event 422 within the display 466 ofthe user device 460.

The user device 460 can use the modified display parameters 416 tochange in a position of the data structure 440 from a first or previousposition within the display 466 to a second, different position withinthe display 466. The user device 460 can allocate a different number ofpixels to the data structure 440 to change a position of the datastructure 440 and/or a size of the data structure 440 within the display466. In embodiments, the user device 460 can use the modified displayparameters 416 to change a type of border region the data structure 440is provided as within the display 466. For example, the data structure440 can be provided as an overlay region within the display 466 suchthat the event 422 and data structure 440 are displayed and visible to auser of the user device 460 at the same time or concurrently. The userdevice 460 can use the modified display parameters 416 to change thedata structure 440 from a side border region (e.g., side panel) to abottom border region or top border region of the display 466. In someembodiments, the user device 460 can use the modified display parameters416 to at least one of a sports ticker, digital on-screen graphic, scorebox, or score bar. The modified display parameters 416 can be providedto modify the display of the data structure 440 such that the datastructure 440 stays visible concurrently with the event 422 within thedisplay 466 as the display of the event 422 changes during the durationof the event 422. The method 700 can return to (714) to wait for asubsequent interaction 414 or selection 412.

Referring now to FIG. 9, illustrated is an example flow diagram of amethod 900 for providing content items based on a live event (e.g., asporting event, or events as described herein) being displayed at afirst device (e.g., which may be a broadcast receiver device such as acable box or a set top box). The method 900 can be performed, forexample, by the node 450, the server 402, or the user device 460, eachof which are described herein above in connection with FIGS. 4A-5. Themethod 900 may also be performed by the computing system 800, describedin connection with FIGS. 8A and 8B of Section C.

At step 902, the method 900 can include determining, by a server havingone or more processors, that a first device of a user is presentingcontent (e.g., a channel, as described herein) corresponding to a liveevent (e.g., an event as described herein) satisfying a condition (e.g.,an event being a sporting). At step 904, the method 900 can includeidentifying, responsive to determining that the first device ispresenting the content corresponding to the live event, objectinformation (e.g., wager information, as described herein) correspondingto the event, one or more object parameters (e.g., wager parameters, asdescribed herein) corresponding to the live event, and a time value ofthe live event.

At step 906, the method 900 can include providing, to the first device,one or more content items (e.g., sometimes referred to herein as “datastructures,” in connection with FIGS. 4A and 4B) for display concurrentwith the live event by the first device. Each content item of the one ormore content items can include a link corresponding to a respectiveobject recommendation (e.g., a wager recommendation, as describedherein), that when accessed via the first device, causes a server (e.g.,the computing system performing the method 900) to transmit a message toa second device of the user using a second device identifier, andpresent an actionable object configured to cause the second device totransmit instructions to generate a data object corresponding to thecontent item.

At step 908, the method 900 can include receiving the instructionsgenerate the data object from the second device. The instructions can betransmitted in response to an interaction at the second device. Theinstructions can identify the data object (e.g., a wager), and anycorresponding object parameters or object information, as well as anidentifier of the event to which the data object corresponds. At step910, the method 900 can include generating the data object based on oneor more object parameters of the event. The foregoing method steps maybe performed, for example, by implementing or performing any of thefeatures described in Section A or Section B.

C. Computing and Network Environment

As shown in FIG. 8A, computer 800 may include one or more processors805, volatile memory 810 (e.g., random access memory (RAM)),non-volatile memory 820 (e.g., one or more hard disk drives (HDDs) orother magnetic or optical storage media, one or more solid state drives(SSDs) such as a flash drive or other solid state storage media, one ormore hybrid magnetic and solid state drives, and/or one or more virtualstorage volumes, such as a cloud storage, or a combination of suchphysical storage volumes and virtual storage volumes or arrays thereof),user interface (UI) 825, one or more communications interfaces 815, andcommunication bus 830. User interface 825 may include graphical userinterface (GUI) 850 (e.g., a touchscreen, a display, etc.) and one ormore input/output (I/O) devices 855 (e.g., a mouse, a keyboard, amicrophone, one or more speakers, one or more cameras, one or morebiometric scanners, one or more environmental sensors, one or moreaccelerometers, etc.). Non-volatile memory 820 stores operating system835, one or more applications 840, and data 845 such that, for example,computer instructions of operating system 835 and/or applications 840are executed by processor(s) 805 out of volatile memory 810. In someembodiments, volatile memory 810 may include one or more types of RAMand/or a cache memory that may offer a faster response time than a mainmemory. Data may be entered using an input device of GUI 850 or receivedfrom I/O device(s) 855. Various elements of computer 800 may communicatevia one or more communication buses, shown as communication bus 830.

Computer 800 as shown in FIG. 8A is shown merely as an example, asclients, servers, intermediary and other networking devices and may beimplemented by any computing or processing environment and with any typeof machine or set of machines that may have suitable hardware and/orsoftware capable of operating as described herein. Processor(s) 805 maybe implemented by one or more programmable processors to execute one ormore executable instructions, such as a computer program, to perform thefunctions of the system. As used herein, the term “processor” describescircuitry that performs a function, an operation, or a sequence ofoperations. The function, operation, or sequence of operations may behard coded into the circuitry or soft coded by way of instructions heldin a memory device and executed by the circuitry. A “processor” mayperform the function, operation, or sequence of operations using digitalvalues and/or using analog signals. In some embodiments, the “processor”can be embodied in one or more application specific integrated circuits(ASICs), microprocessors, digital signal processors (DSPs), graphicsprocessing units (GPUs), microcontrollers, field programmable gatearrays (FPGAs), programmable logic arrays (PLAs), multi-core processors,or general-purpose computers with associated memory. The “processor” maybe analog, digital or mixed-signal. In some embodiments, the “processor”may be one or more physical processors or one or more “virtual” (e.g.,remotely located or “cloud”) processors. A processor including multipleprocessor cores and/or multiple processors multiple processors mayprovide functionality for parallel, simultaneous execution ofinstructions or for parallel, simultaneous execution of one instructionon more than one piece of data.

Communications interfaces 815 may include one or more interfaces toenable computer 800 to access a computer network such as a Local AreaNetwork (LAN), a Wide Area Network (WAN), a Personal Area Network (PAN),or the Internet through a variety of wired and/or wireless or cellularconnections.

In described embodiments, the computing device 800 may execute anapplication on behalf of a user of a client computing device. Forexample, the computing device 800 may execute a virtual machine, whichprovides an execution session within which applications execute onbehalf of a user or a client computing device, such as a hosted desktopsession. The computing device 800 may also execute a terminal servicessession to provide a hosted desktop environment. The computing device800 may provide access to a computing environment including one or moreof: one or more applications, one or more desktop applications, and oneor more desktop sessions in which one or more applications may execute.

Referring to FIG. 8B, a computing environment 860 is depicted. Computingenvironment 860 may generally be considered implemented as a cloudcomputing environment, an on-premises (“on-prem”) computing environment,or a hybrid computing environment including one or more on-premcomputing environments and one or more cloud computing environments.When implemented as a cloud computing environment, also referred as acloud environment, cloud computing or cloud network, computingenvironment 860 can provide the delivery of shared services (e.g.,computer services) and shared resources (e.g., computer resources) tomultiple users. For example, the computing environment 860 can includean environment or system for providing or delivering access to aplurality of shared services and resources to a plurality of usersthrough the internet. The shared resources and services can include, butnot limited to, networks, network bandwidth, servers 895, processing,memory, storage, applications, virtual machines, databases, software,hardware, analytics, and intelligence.

In embodiments, the computing environment 860 may provide client 865with one or more resources provided by a network environment. Thecomputing environment 865 may include one or more clients 865 a-465 n,in communication with a cloud 875 over one or more networks 870A, 870B.Clients 865 may include, e.g., thick clients, thin clients, and zeroclients. The cloud 875 may include back end platforms, e.g., servers895, storage, server farms or data centers. The clients 865 can be thesame as or substantially similar to computer 800 of FIG. 8A.

The users or clients 865 can correspond to a single organization ormultiple organizations. For example, the computing environment 860 caninclude a private cloud serving a single organization (e.g., enterprisecloud). The computing environment 860 can include a community cloud orpublic cloud serving multiple organizations. In embodiments, thecomputing environment 860 can include a hybrid cloud that is acombination of a public cloud and a private cloud. For example, thecloud 875 may be public, private, or hybrid. Public clouds 875 mayinclude public servers 895 that are maintained by third parties to theclients 865 or the owners of the clients 865. The servers 895 may belocated off-site in remote geographical locations as disclosed above orotherwise. Public clouds 875 may be connected to the servers 895 over apublic network 870. Private clouds 875 may include private servers 895that are physically maintained by clients 865 or owners of clients 865.Private clouds 875 may be connected to the servers 895 over a privatenetwork 870. Hybrid clouds 875 may include both the private and publicnetworks 870A, 870B and servers 895.

The cloud 875 may include back end platforms, e.g., servers 895,storage, server farms or data centers. For example, the cloud 875 caninclude or correspond to a server 895 or system remote from one or moreclients 865 to provide third party control over a pool of sharedservices and resources. The computing environment 860 can provideresource pooling to serve multiple users via clients 865 through amulti-tenant environment or multi-tenant model with different physicaland virtual resources dynamically assigned and reassigned responsive todifferent demands within the respective environment. The multi-tenantenvironment can include a system or architecture that can provide asingle instance of software, an application or a software application toserve multiple users. In embodiments, the computing environment 860 canprovide on-demand self-service to unilaterally provision computingcapabilities (e.g., server time, network storage) across a network formultiple clients 865. The computing environment 860 can provide anelasticity to dynamically scale out or scale in responsive to differentdemands from one or more clients 865. In some embodiments, the computingenvironment 860 can include or provide monitoring services to monitor,control and/or generate reports corresponding to the provided sharedservices and resources.

In some embodiments, the computing environment 860 can include andprovide different types of cloud computing services. For example, thecomputing environment 860 can include Infrastructure as a service(IaaS). The computing environment 860 can include Platform as a service(PaaS). The computing environment 860 can include server-less computing.The computing environment 860 can include Software as a service (SaaS).For example, the cloud 875 may also include a cloud based delivery, e.g.Software as a Service (SaaS) 880, Platform as a Service (PaaS) 885, andInfrastructure as a Service (IaaS) 890. IaaS may refer to a user rentingthe use of infrastructure resources that are needed during a specifiedtime period. IaaS providers may offer storage, networking, servers orvirtualization resources from large pools, allowing the users to quicklyscale up by accessing more resources as needed. Examples of IaaS includeAMAZON WEB SERVICES provided by Amazon.com, Inc., of Seattle, Wash.,RACKSPACE CLOUD provided by Rackspace US, Inc., of San Antonio, Tex.,Google Compute Engine provided by Google Inc. of Mountain View, Calif.,or RIGHTSCALE provided by RightScale, Inc., of Santa Barbara, Calif.PaaS providers may offer functionality provided by IaaS, including,e.g., storage, networking, servers or virtualization, as well asadditional resources such as, e.g., the operating system, middleware, orruntime resources. Examples of PaaS include WINDOWS AZURE provided byMicrosoft Corporation of Redmond, Wash., Google App Engine provided byGoogle Inc., and HEROKU provided by Heroku, Inc. of San Francisco,Calif. SaaS providers may offer the resources that PaaS provides,including storage, networking, servers, virtualization, operatingsystem, middleware, or runtime resources. In some embodiments, SaaSproviders may offer additional resources including, e.g., data andapplication resources. Examples of SaaS include GOOGLE APPS provided byGoogle Inc., SALESFORCE provided by Salesforce.com Inc. of SanFrancisco, Calif., or OFFICE 365 provided by Microsoft Corporation.Examples of SaaS may also include data storage providers, e.g. DROPBOXprovided by Dropbox, Inc. of San Francisco, Calif., Microsoft SKYDRIVEprovided by Microsoft Corporation, Google Drive provided by Google Inc.,or Apple ICLOUD provided by Apple Inc. of Cupertino, Calif.

Clients 865 may access IaaS resources with one or more IaaS standards,including, e.g., Amazon Elastic Compute Cloud (EC2), Open CloudComputing Interface (OCCI), Cloud Infrastructure Management Interface(CIMI), or OpenStack standards. Some IaaS standards may allow clientsaccess to resources over HTTP, and may use Representational StateTransfer (REST) protocol or Simple Object Access Protocol (SOAP).Clients 865 may access PaaS resources with different PaaS interfaces.Some PaaS interfaces use HTTP packages, standard Java APIs, JavaMailAPI, Java Data Objects (JDO), Java Persistence API (JPA), Python APIs,web integration APIs for different programming languages including,e.g., Rack for Ruby, WSGI for Python, or PSGI for Perl, or other APIsthat may be built on REST, HTTP, XML, or other protocols. Clients 865may access SaaS resources through the use of web-based user interfaces,provided by a web browser (e.g. GOOGLE CHROME, Microsoft INTERNETEXPLORER, or Mozilla Firefox provided by Mozilla Foundation of MountainView, Calif.). Clients 865 may also access SaaS resources throughsmartphone or tablet applications, including, e.g., Salesforce SalesCloud, or Google Drive app. Clients 865 may also access SaaS resourcesthrough the client operating system, including, e.g., Windows filesystem for DROPBOX.

In some embodiments, access to IaaS, PaaS, or SaaS resources may beauthenticated. For example, a server or authentication server mayauthenticate a user via security certificates, HTTPS, or API keys. APIkeys may include various encryption standards such as, e.g., AdvancedEncryption Standard (AES). Data resources may be sent over TransportLayer Security (TLS) or Secure Sockets Layer (SSL).

1. A method comprising: determining, by a server having one or moreprocessors, that a first device of a user is presenting contentcorresponding to a live event satisfying a condition; identifying, bythe server responsive to determining that the first device is presentingthe content corresponding to the live event, object informationcorresponding to the event, one or more object parameters correspondingto the live event, and a time value of the live event; providing, by theserver to the first device, one or more content items for displayconcurrent with the live event by the first device, each content item ofthe one or more content items including a link corresponding to arespective object recommendation, that when accessed via the firstdevice, causes the server to transmit a message to a second device ofthe user using a second device identifier and present an actionableobject configured to cause the second device to transmit instructions togenerate a data object corresponding to the content item; receiving, bythe server from the second device, the instructions generate the dataobject; and generating, by the server, the data object based on the oneor more object parameters of the respective event.
 2. The method ofclaim 1, further comprising: identifying, by the server, a plurality ofevents accessed by the user during a determined time period; andgenerating, by the server, one or more recommendations for the eventresponsive based on the one or more object parameters for each event ofthe plurality of events.
 3. The method of claim 2, further comprisingproviding, by the server to the first device, a subsequent datastructure responsive to the first device presenting a second broadcastof a subsequent event of the plurality of events, the subsequent datastructure including the one or more recommendations for the subsequentevent of the plurality of events.
 4. The method of claim 2, furthercomprising accessing, by the server from one or more servers, a schedulefor broadcast content corresponding to the plurality of events over apredetermined time period.
 5. The method of claim 1, further comprising:determining, by the server, position information indicative of alocation to display the one or more content items within the display ofthe first device such that the one or more content items and the eventare visible to the user through the display of the first device; andproviding, by the server to the first device, the position informationwith the one or more content items, wherein the first device displaysthe one or more content items concurrent with the event through thefirst device based on the location indicated by the positioninformation.
 6. The method of claim 1, further comprising: modifying, bythe server responsive to a change in the event, position information forthe one or more content items, the position information indicative of alocation to display the one or more content items within the display ofthe first device such that the one or more content items and the eventare visible to the user through the display of the first device; andproviding, by the server to the first device, the position informationthat causes the first device to modify the display of the one or morecontent items from a first position within the display of the firstdevice to a second position within the display of the first device. 7.The method of claim 1, further comprising: modifying, by the serverresponsive to an interaction by the user with the first device, positioninformation for the one or more content items, the position informationindicative of a location to display the one or more content items withinthe display of the first device such that the one or more content itemsand the event are visible to the user through the display of the firstdevice; and providing, by the server to the first device, the positioninformation that causes the first device to modify the display of theone or more content items from a first position within the display ofthe first device to a second position within the display of the firstdevice.
 8. The method of claim 2, further comprising: accessing, by theserver from one or more servers, a user profile associated with theuser, the user profile including account information for the user; andgenerating, by the server, the one or more content items to include theaccount information for the user, wherein the first device displays theone or more content items including the account information concurrentwith the event through the first device.
 9. The method of claim 8,comprising: identifying, by the server from the user profile associatedwith the user, a viewing history for the user for a time period, theviewing history indicative of one or more events previously presented tothe user; and generating, by the server, the one or more content itemsto include one or more recommendations for the plurality of eventsavailable to the user.
 10. The method of claim 9, comprising: ranking,by the server, the one or more recommendations based on a durationindicated by the time value for the event; and assigning, by the serverbased on the ranking, a location for each of the one or morerecommendations for display at the first device.
 11. A systemcomprising: a server comprising one or more processors coupled tomemory, the one or more processors configured to: determine that a firstdevice of a user is presenting content corresponding to a live eventsatisfying a condition; identify, responsive to determining that thefirst device is presenting the content corresponding to the live event,object information corresponding to the event, one or more objectparameters corresponding to the live event, a time value of the liveevent; provide, to the first device, one or more content items fordisplay concurrent with the live event by the first device, each contentitem of the one or more content items including a link corresponding toa respective object recommendation, that when accessed via the firstdevice, causes the server to transmit a message to a second device ofthe user using a second device identifier and present an actionableobject configured to cause the second device to transmit instructions togenerate a data object corresponding to the content item; receive, fromthe second device, the instructions generate the data object; andgenerate the data object based on the one or more object parameters ofthe respective event.
 12. The system of claim 11, wherein the one ormore processors are further configured to: identify a plurality ofevents accessed by the user during a determined time period; andgenerate one or more recommendations for the event responsive based onthe one or more object parameters for each event of the plurality ofevents.
 13. The system of claim 12, wherein the one or more processorsare further configured to provide, to the first device, a subsequentdata structure responsive to the first device presenting a secondbroadcast of a subsequent event of the plurality of events, thesubsequent data structure including the one or more recommendations forthe subsequent event of the plurality of events.
 14. The system of claim12, wherein the one or more processors are further configured to access,from one or more servers, a schedule for broadcast content correspondingto the plurality of events over a predetermined time period.
 15. Thesystem of claim 11, wherein the one or more processors are furtherconfigured to: determine position information indicative of a locationto display the one or more content items within the display of the firstdevice such that the one or more content items and the event are visibleto the user through the display of the first device; and provide, to thefirst device, the position information with the one or more contentitems, wherein the first device displays the one or more content itemsconcurrent with the event through the first device based on the locationindicated by the position information.
 16. The system of claim 11,wherein the one or more processors are further configured to: modify,responsive to a change in the event, position information for the one ormore content items, the position information indicative of a location todisplay the one or more content items within the display of the firstdevice such that the one or more content items and the event are visibleto the user through the display of the first device; and provide, to thefirst device, the position information that causes the first device tomodify the display of the one or more content items from a firstposition within the display of the first device to a second positionwithin the display of the first device.
 17. The system of claim 11,wherein the one or more processors are further configured to: modify,responsive to an interaction by the user with the first device, positioninformation for the one or more content items, the position informationindicative of a location to display the one or more content items withinthe display of the first device such that the one or more content itemsand the event are visible to the user through the display of the firstdevice; and provide, to the first device, the position information thatcauses the first device to modify the display of the one or more contentitems from a first position within the display of the first device to asecond position within the display of the first device.
 18. The systemof claim 12, wherein the one or more processors are further configuredto: access, from one or more servers, a user profile associated with theuser, the user profile including account information for the user; andgenerate the one or more content items to include the accountinformation for the user, wherein the first device displays the one ormore content items including the account information concurrent with theevent through the first device.
 19. The system of claim 18, wherein theone or more processors are further configured to: identify, from theuser profile associated with the user, a viewing history for the userfor a time period, the viewing history indicative of one or more eventspreviously presented to the user; and generate the one or more contentitems to include one or more recommendations for the plurality of eventsavailable to the user.
 20. The system of claim 19, wherein the one ormore processors are further configured to: rank the one or morerecommendations based on a duration indicated by the time value for theevent; and assign, based on the ranking, a location for each of the oneor more recommendations for display at the first device.